我目前正在加载一个asp.net数据网格视图。在视图中,我返回查询结果,其中有一个名为“last_payment”的列。我想更改last_payment少于5天的所有行的颜色。我怎样才能做到这一点?
答案 0 :(得分:0)
您可以使用RowDataBound
事件更改行背景颜色。
在你的aspx文件中
<asp:GridView ID="gridview1" runat="server" OnRowDataBound="GridView1_RowDataBound">
</asp:GridView>
和你的代码文件
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
//here you can compate date this is just for example..
if(last_payment>DateTime.Now().AddDays(-5))
{
e.Row.BackColor = System.Drawing.ColorTranslator.FromHtml("#F3F7AC");
}
}
}
答案 1 :(得分:0)
if (e.Row.RowType == DataControlRowType.DataRow)
{
if ((Convert.ToDateTime(e.Row.Cells[0]) > DateTime.Now.AddDays(-5)))
{
e.Row.BackColor = System.Drawing.ColorTranslator.FromHtml("#cccccc");
}
}
在RowDataBound
事件中提供上述代码。
注意:根据您的Cells[0]
更改gridview
。