我想根据某些条件更改gridview的特定行颜色,我使用带有c#的ASP.NET。
我知道我可以使用HTMLCellPrepared方法,但在我的方法中我想看看其他网格的值?这可能吗?
protected void GVResults_HtmlDataCellPrepared(object sender, ASPxGridViewTableDataCellEventArgs e)
{
if (e.DataColumn.FieldName == "CarrierId")
if ( Convert.ToInt32(e.CellValue) > 0)
e.Cell.ForeColor = System.Drawing.Color.Red;
}
这是该方法的第一部分,但我想查看其他网格中的值,以便对此网格进行可视化更改。问题是我不知道如何从其他网格访问值....
答案 0 :(得分:4)
我建议你使用htmlrowprepared事件进行行的条件着色。
根据您编写的代码,以下示例可以帮助您:
protected void GVResults_HtmlRowPrepared(object sender, ASPxGridViewTableRowEventArgs e)
{
if (e.RowType != GridViewRowType.Data) return;
int value = (int)e.GetValue("CarrierId");
if (value > 0)
e.Row.ForeColor = System.Drawing.Color.Red;
}
答案 1 :(得分:1)
如果样式依赖于数据并为该条件设置样式,则可以使用GridView的RowDataBound
事件来检查条件。