在C#中的datagridview怎么设置符合条件的列的背景色

很急的,有哪位知道,说一下,谢了!
2024-12-14 06:17:34
推荐回答(2个)
回答1:

以颜色DeepSkyBlue为例:

dataGridView1.RowsDefaultCellStyle.BackColor = Color.DeepSkyBlue;//除header以外的所有
dataGridView1.DefaultCellStyle.BackColor = Color.DeepSkyBlue;//所有行
dataGridView1.RowHeadersDefaultCellStyle.BackColor = Color.DeepSkyBlue;//首列颜色
dataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.DeepPink;//首行颜色

回答2:

一般情况下,要响应RowDataBound事件. 如下就是一个条件格式的例子。

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
try
{
decimal baoe = Convert.ToDecimal(
DataBinder.Eval(e.Row.DataItem, "baoe")); //得到指定列的值, 这个例子里,是baoe字段。
if (baoe >= 10000000) // 如果大于10000000,就设置格式。否则不要动,此行会按总体的格式渲染。
{
e.Row.Font.Bold = true; // 粗体
e.Row.ForeColor = System.Drawing.Color.Red; // 红字
}
}
catch (Exception ee)
{
}

}
}