[Hinweis] Wie poste ich richtig? Punkt 4, ich weiß, ich sollte nicht darauf einsteigen, aber manchmal kann man einfach nicht mehr zugucken ;)
- Markier dein DataGridView
- F4 öffnet das Eigenschaftenfenster
- Klick auf den Blitz im Eigenschaftenfenster (oben, Mitte rechts)
- such die Zeile mit dem Ereignis "CellFormatting" (siehe Screenshot) und doppelklick das leere Feld in der rechten Spalte
Du landest im Code-Behind, das sollte etwa so aussehen:
private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
}
Hier arbeitest du weiter:
private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
var myDataGrid = sender as DataGridView; //sag dem Compiler, dass es sich um ein DGV handelt
var myColumn = myDataGrid.Columns[e.ColumnIndex]; //finde heraus, in welcher Spalte du bist
if (myColumn.Name == "Datumsspaltenname") //alle anderen Spalten interessieren dich ja nicht
{
var dateInField = ((DateTime)e.Value).Date; //.Date, damit wir nicht die Uhrzeiten vergleichen
var compareDate = DateTime.Now.Date;
if(compareDatum größer als dateInField)...
else if(compareDatum kleiner als dateInField+30 tage)...
else ...
//Hintergrundfarbe der Zelle findest du in e.CellStyle.BackColor
}
}
Tut mir ja leid, das so zu sagen, aber du vermittelst nicht wirklich den Eindruck, als hättest du die Links und Hinweise bisher befolgt, obwohl die die Lösung quasi schon vorweggenommen haben. Ein bisschen mehr Eigeninitiative wäre gut. Oder, wenn dich das wirklich überfordert hat, wäre das ein Zeichen dafür, dass du dich noch etwas mehr mit den Grundlagen beschäftigen solltest.
LaTino