根据GridView的值突出显示一个单元格(即更改它的背面颜色)

时间:2017-03-13 14:04:37

标签: c# asp.net gridview

我在网页上有一个GridView。显示的大多数字段是“Y / N”字段。我被要求更改值为“N”的所有单元格的背景颜色。我似乎无法找到任何类似这样的示例代码,任何人都可以帮助我吗?

我试过这个,但它不起作用:

foreach (GridView row in DataGrid_AAReview.Rows)
{
   if (row.Rows[0].Cells[0].Text == "N")
   {
       row.BackColor = Color.Tomato;
   }
}

1 个答案:

答案 0 :(得分:0)

使用row.Rows[0].Cells[0]毫无意义。您应该参考cell下的row,而不是row.Rows

另外 - 您写的foreach (GridView row in DataGrid_AAReview.Rows)也没有意义 - 迭代行应该是foreach (GridViewRow row in...

试试这个:

foreach (GridViewRow row in DataGrid_AAReview.Rows)
{
   if (row.Cells[0].Text.ToUpper() == "N")
   {
       row.BackColor = Color.Tomato;
   }
}

根据您的要求(在评论部分中),遍历所有列:

foreach (GridViewRow row in DataGrid_AAReview.Rows)
{
   for(int i = 0; i < DataGrid_AAReview.Columns.Count, i++)
   {
        if (row.Cells[i].Text.ToUpper() == "N")
        {
             row.BackColor = Color.Tomato;
        }
   }
}