protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
string myUpdateTime = e.Row.Cells[2].Text;
//Response.Write(myUpdateTime);
if (myUpdateTime == DateTime.Today.ToString())
{
e.Row.BackColor = System.Drawing.Color.Yellow;
}
}
2.需要说明的是:要取出判断值的列为第几列,这个可是个问题哦。这个列的确定方法是:以显示列为准,从0开始计数得到的。
3.在我用到这个功能时候,却出现了个意外情况,我的GridView中明明有十列,我要取得是从0数的话,第6列的值,可是,系统老是提示我说Cells[6]中的值越界,因为没有这么多列,大概意思就是这。取的话,只能取到0列和1列,好奇怪的问题哦。
我的数据只有3行,可写了语句把每行列的总数输出出来,竟然是10列、10列、10列、1列,让人觉得特别的#@$$%$%&????莫名其妙阿,怎么回事儿到最终都没有搞明白,不过在函数中加了判断语句判断了一下每行的总列数,结果才算出来。代码如下:
protected void GridView1_RowDataBound1(object sender, GridViewRowEventArgs e)
{
//下面语句是把每行的总列数输出出来。
//Response.Write(e.Row.Cells.Count.ToString()+"---");
if (e.Row.Cells.Count >= 6)
{
string myUpdateTime = e.Row.Cells[6].Text;
if (myUpdateTime == "0")
{
e.Row.BackColor = System.Drawing.Color.Yellow;
}
}
}