设置Telerik RadGrid的行颜色

时间:2014-07-25 03:32:53

标签: c# telerik radgrid

我正在使用RadGrid来显示数据库中的数据。我想将RadGrid中的行颜色更改为红色,如果在行显示为" REJECTED"的状态列中。如果状态为NULL,则该行将保持显示为白色。我尝试过这段代码但行仍然没有将颜色更改为红色。

try
{
    if (dataBoundItem["status"].Text == "REJECTED")
    {
        TableCell cell = (TableCell)dataBoundItem["status"];
        cell.BackColor = System.Drawing.Color.Red;
        dataBoundItem.BackColor = System.Drawing.Color.Red;

        if (e.Item is GridDataItem)
        {
            GridDataItem dataBoundItem1 = e.Item as GridDataItem;

            if (dataBoundItem1["Status"].Text != null)
            {
                cell.BackColor = System.Drawing.Color.Red;
                dataBoundItem1.BackColor = Color.Red;
                dataBoundItem1["status"].ForeColor = Color.Red;
                dataBoundItem1["status"].Font.Bold = true;
            }
        }
    }
}
catch
{ }

1 个答案:

答案 0 :(得分:4)

尝试这样的事情:

using System.Drawing;

protected void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
 {
  if (e.Item is GridDataItem)
    {
     TableCell celltoVerify1 = dataBoundItem["status"];
     GridDataItem dataBoundItem = e.Item as GridDataItem;
       if (celltoVerify1.Text== "REJECTED")
        {
            celltoVerify1.ForeColor =  Color.Red;/// Only Change Cell Color
            dataBoundItem.ForeColor = Color.Yellow; /// Change the row Color
            //celltoVerify1.Font.Bold = true;
            //celltoVerify1.BackColor = Color.Yellow;
        }
    }
 }

让我知道它是否适合你。