Wie kann ich die Spalte ändern Vordergrundfarbe in DataGridview als pro Bedingung?

Ich habe eine Tabelle wie Mitarbeiter und einer der Zeile 'status'.
Wenn der status Wert ist "genehmigen" dann will ich zeigen, dass die Zeile in grüner Farbe
ansonsten möchte ich zeigen, dass es in einer roten Farbe.
Ich habe versucht, folgenden, aber es funktioniert nicht

if (e.Row.RowType == DataControlRowType.Header)
{ 
    string status = DataBinder.Eval(e.Row.DataItem, "IsApprove").ToString();
    if (status == "pending")
    {
        e.Row.ForeColor = System.Drawing.Color.Red; //Change the row's Text color
    }
}

AUCH DIESE

private void gvleavedetail_cellformatting(object sender, datagridviewcellformattingeventargs e)
{
    //if the column is the artist column, check the
    //value.
    if (this.gvleavedetail.columns[e.columnindex].name == "artist")
    {
        if (e.value != null)
        {
            //check for the string "pink" in the cell.
            string stringvalue = (string)e.value;
            stringvalue = stringvalue.tolower();
            if (stringvalue == "high")
            {
                e.cellstyle.backcolor = color.pink;
            }
        }
    }

Aber in diesem Fall bin ich immer Fehler für datagridviewcellformattingeventargs
Ich verwende VS2010

InformationsquelleAutor Neo | 2010-12-28
Schreibe einen Kommentar