Как изменить цвет переднего плана столбца в DataGridview согласно условию? - PullRequest
2 голосов
/ 28 декабря 2010

У меня есть одна таблица, похожая на сотрудника, и одна из ее строк - «статус».Если значение статуса «Подтвердить», то я хочу показать эту строку зеленым цветом, в противном случае я хочу показать ее красным цветом.Я попробовал следующее, но это не работает

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
    }
}

ТАКЖЕ ЭТО ОДИН

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;
            }
        }
    }

Но в этом случае я получаю ошибку для datagridviewcellformattingeventargs, которые я использую VS2010

1 Ответ

3 голосов
/ 29 декабря 2010

Привет, все, что я получил решение, плз с этим;)

просто напишите следующий код условия в RowDataBound EVENT OF GRIDVIEW

  protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            string status = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "IsApprove"));

            if (status == "pending")
            {

                e.Row.Cells[7].ForeColor = System.Drawing.Color.Yellow;
            }
            else if(status== "accept")
            {

                e.Row.Cells[7].ForeColor = System.Drawing.Color.Green;
            }
            else if (status == "reject")
            {

                e.Row.Cells[7].ForeColor = System.Drawing.Color.Red;
            }
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...