我有一个ASP.net网格我想要更改行的背景颜色,如果在GRIDview的列中有一个特殊的值,比如说5
请帮忙
答案 0 :(得分:0)
首先,您需要订阅OnDataBound-Event
。
然后将e.Row.DataItem
转换为自定义对象(或以其他方式检索所需的值。取决于您的数据源类型)
如果您的条件匹配,则可以通过为BackColor
属性
e.BackColor
属性
我过去总结过类似的here。 (也许我将来会在这个时候合并这个回复)
答案 1 :(得分:0)
使用以下代码:
protected void DrugDetailGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
// To check condition on string value
//Note: "Drug" is my data Column Name and "Hydralazine" is value to be match
if (Convert.ToString(DataBinder.Eval(e.Row.DataItem, "Drug")) == "Hydralazine")
{
e.Row.BackColor = System.Drawing.Color.Red;
}
else
{
// Whatever you want to do.......
// e.Row.ForeColor = System.Drawing.Color.Yellow;
}
// To check condition on integer value
if (Convert.ToInt16(DataBinder.Eval(e.Row.DataItem, "Dosage")) == 50)
{
e.Row.BackColor = System.Drawing.Color.Cyan;
}
}
}