Laden...

Datagridview und DefaultCellStyle

Erstellt von MrDigi vor 16 Jahren Letzter Beitrag vor 16 Jahren 1.195 Views
M
MrDigi Themenstarter:in
9 Beiträge seit 2007
vor 16 Jahren
Datagridview und DefaultCellStyle

Hallo Forum,

ich habe ein Problem bei dem ich gerade nicht so recht weiter weiß:

Ausgangslage:

  • Ich habe ein DataGridView welches seine Daten aus einer BindingList<> bekommt.
  • Je nach Daten in einer Zeile werden die Zeilen durch den DefaultCellStyle unterschiedlich eingefärbt.

Wenn ich also nun eine neue Zeile einfüge, dann mache ich folgendes:
myBindingList.Add(newEntry);
myDataGridView.Rows[myDataGridView.RowCount - 1].DefaultCellStyle=cellStyleXYZ;

Das klappt auch supi, alle Elemente werden "unten" im Datagridview hinzugefügt und angezeigt.

Problem:
Jetzt möchte ich aber die Elemente nicht "unten" ans DataGridView anfügen sondern oben, in der 1. Zeile.
Wenn ich dies mache:

(myBindingList.Insert(0,newEntry)

dann ist jetzt zwar der Eintrag vorhanden, die Zuordnung zwischen DefaultCellStyle und den jeweiligen bereits vorhandenen Zeilen ist nun aber verschoben.
Der Listen-Eintrag mit Index x ist ja nun Eintrag mit Index x+1, hat aber den DefaultCellStyle von dem ursprünglichen x+1 geerbt... 🤔

Nun die Frage:
Wie kann ich das Problem pragmatisch lösen ohne durch das ganze DataGridView durchzugehen und den Cellstyle jeder Zeile manuell umzubiegen ? ?(

Später soll die Liste auch sortiert werden können, hier kommt das Problem dann nochmal auf.

Beste Grüße
MrDigi 8)

F
10.010 Beiträge seit 2004
vor 16 Jahren

warum setzt Du nicht den defaultCellStyle des GridView selber?

M
MrDigi Themenstarter:in
9 Beiträge seit 2007
vor 16 Jahren

Das war ja meine Frage, gibt es eine Möglichkeit dass das DataGridView selbst die Zuordnung zwischen Eintrag und DefaultCellStyle behält ?

Nun die Frage:
Wie kann ich das Problem pragmatisch lösen ohne durch das ganze DataGridView durchzugehen und den Cellstyle jeder Zeile manuell umzubiegen ? verwirrt

Ist das manuelle Zuordnen zwischen DefaultCellStyle und sortierten Zeilen also die einzige Möglichkeit ?