如何根据列 Header 更改 GridView 列颜色
How to Change GridView Column Color Based on Column Header
如何根据 asp.net 中的第 header 列更改 GridView 列的颜色 (vb.net)?
例如,当列 header 的文本以 "GT_" 开头时,整列的文本将为红色,而 header 和 "CF_" 的文本将为绿色。
像这样使用 rowdatabound 事件:
protected void gv_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
DataRowView drv = (DataRowView)e.Row.DataItem;
for (int i = 0; i < drv.DataView.Table.Columns.Count; i++)
{
if (drv.DataView.Table.Columns[i].ColumnName.StartsWith("GT_"))
{
e.Row.Cells[i].BackColor = System.Drawing.Color.LawnGreen;
grdAdd.Columns[i].HeaderStyle.BackColor = System.Drawing.Color.Khaki;
}
}
}
}
在这里输出
如何根据 asp.net 中的第 header 列更改 GridView 列的颜色 (vb.net)? 例如,当列 header 的文本以 "GT_" 开头时,整列的文本将为红色,而 header 和 "CF_" 的文本将为绿色。
像这样使用 rowdatabound 事件:
protected void gv_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
DataRowView drv = (DataRowView)e.Row.DataItem;
for (int i = 0; i < drv.DataView.Table.Columns.Count; i++)
{
if (drv.DataView.Table.Columns[i].ColumnName.StartsWith("GT_"))
{
e.Row.Cells[i].BackColor = System.Drawing.Color.LawnGreen;
grdAdd.Columns[i].HeaderStyle.BackColor = System.Drawing.Color.Khaki;
}
}
}
}
在这里输出