网格视图格式问题

本文关键字:问题 格式 视图 网格 | 更新日期: 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;  
     }

等等。我喜欢只更改标签属性而不是整行。