# Einige Zeilen in einem Datagrid farbig markieren



## Manuelh (12. April 2005)

Hallo,
   Ich lese von einer Sql DAtenbank die werte für mein Datagrid aus! In der Spalte Band stehen Bänder von 1 - 3
   Jedes Band sollte eine eigene Hintergrundfarbe haben!
   Z.b. soll Band 1 im Datagrid die Hintergrundfarbe blau haben 
   Band 2 gel
   Band 3 grün
   oder so!


   Gruß Manuel


----------



## Orakel (12. April 2005)

Hi Manuel,

schau mal hier: http://www.vb-fun.de/cgi-bin/loadframe.pl?ID=dotnet/tipps/tip0066.shtml

Gruß
Das Orakel


----------



## JensG (12. April 2005)

Hallo,
der Tip an sich ist sehr gut, aber leider für Entwicklungsumgebung:  VB.Net,
das wird ihm nicht viel nützen.
Mit dem Datagrid von VB6 geht das IMHO nicht das man Zeilen Farbig
darstellt.

Gruß
Jens


----------



## Manuelh (12. April 2005)

Vielen dank!
 Doch icih arbeite schon mit .Net jedoch ist das Problem hier das ich meine Daten mit einer Selct anweisung aus einer Sql Tabelle hole! Im Beispiel wurden ja alle Daten per Hand reingeschrieben! Und ich hab so ca. 10000 Daten! 
 Hab mir überlegt vielleicht würde es mit einem ItemDataBound gehen! Aber ich glaub ich sitz momentan auf der Leitung :?!


----------



## Orakel (12. April 2005)

Hi JensG

Danke für den Hinweis. Hatte ich übersehen.

Sorry Manuel

Gruß
Das Orakel


----------



## Manuelh (12. April 2005)

Ok ein weiterer Vorschlag! Ich mach ein loop rein und gehe jede einzelne Zeile durch! Aber wie mach ich das dann am besten?


----------



## Andreas Koch (31. August 2010)

ich hab das in c# so gelöst:
über das databounditem greife ich auf ein objekt zurück (nhibernate) .. da muss natürlich deine eigene bedingung zum einfärben rein.. spalteninhalt überprüfen mit contains oder equals.. jenachdem was du brauchst..

```
for (int i = 0; i < dgvVorlagen.Rows.Count; i++)
                    {
                       Directory dir =  (Directory)this.dgvVorlagen.Rows[i].DataBoundItem;
                       if (dir.directory)
//färbt die zeile die den kriterien entspricht hellgrau
                           this.dgvVorlagen.Rows[i].DefaultCellStyle.BackColor = Color.LightGray;
                       else
                       {
//färbt alle andren abwechselnd weiß oder beige (aus übersichtszwecken..)
                           if (i%2 ==1)
                               this.dgvVorlagen.Rows[i].DefaultCellStyle.BackColor = Color.White;
                           else
                               this.dgvVorlagen.Rows[i].DefaultCellStyle.BackColor = Color.AntiqueWhite;
                           
                       }
//das angelegte directory von oben zerstören um den speicher nit zuzumüllen..
                        dir = null;
                    }
```

in VB sollte es ähnlich gehen. ich hoff ich konnt dir damit helfen.


----------

