网格视图格式问题
本文关键字:问题 格式 视图 网格 | 更新日期: 2023-09-27 18:32:39
我正在 C# 网格视图中使用一些代码,我让它根据值标记不同的颜色。我还想通过更改红色背景色的前色使其更易于阅读。可能是一个愚蠢的问题,但我如何在代码中实现这一点,它将标记背景色红色和前色白色?我已经尝试了几种方法,但在这里没有成功。它适用于任何一个或,但我想在这里同时使用两者。
protected void grd_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
System.Data.DataRow row = ((System.Data.DataRowView)e.Row.DataItem).Row;
if (row["Qty To Sell"].ToString() == "1")
e.Row.BackColor = System.Drawing.Color.LightSalmon;
else if (row["Qty To Sell"].ToString() == "3")
e.Row.BackColor = System.Drawing.Color.LightSalmon;
else if (row["Qty To Sell"].ToString() == "2")
e.Row.BackColor = System.Drawing.Color.LightSalmon;
else if (row["Qty To Sell"].ToString() == "0")
e.Row.BackColor = System.Drawing.Color.Red;
我使用标签属性来执行此操作。
定义您的数字参数:
int two = 2;
int four = 4;
查找您的标签:
Label my_label = (Label)row.FindControl("your_label");
将该标签值转换为整数:
int lbl_value = Convert.ToInt32(my_label.Text);
然后更改 if 语句中的标签属性:
if ( lbl_value == two)
{
my_label.BackColor = System.Drawing.Color.White;
my_label.Forecolor = System.Drawing.Color.Red;
}
等等。我喜欢只更改标签属性而不是整行。