【发布时间】:2016-01-08 03:41:02
【问题描述】:
如果单元格的文本 != "nbsp;"它确实有效,除了最后一行。即使它不等于“nbsp;”,它也不会为最后一行着色
protected void grdviewCases_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
foreach (GridViewRow gr in grdviewCases.Rows)
{
if (gr.Cells[14].Text != " ")
{
gr.Cells[14].BackColor = Color.Red; ;
gr.Cells[14].ForeColor = Color.WhiteSmoke;
}
}
}
}
【问题讨论】:
-
可能只有在 RowDataBound 事件发生后,新行才会添加到 Rows 集合中。我会先检查一下。
-
另外,为什么在每行数据绑定后遍历整个行集合而不只对新绑定的行起作用?
-
一个简单的解决方案是消除 foreach 指令,并将剩余代码中的 gr 替换为 e.Row
标签: c# asp.net visual-studio gridview