设置datagridview单元格背景颜色[重复]
Posted
技术标签:
【中文标题】设置datagridview单元格背景颜色[重复]【英文标题】:Setting datagridview cell background color [duplicate] 【发布时间】:2018-06-15 00:12:48 【问题描述】:我正在尝试检查活动列的条件是否等于 false,它会将单元格颜色行设置为红色,但即使活动列为 false,它也不会更改行颜色
这是显示的输出:
dgv_loadout.DataSource = ouput.ToList();
var activate = db.Users.ToList();
foreach (DataGridViewRow color in dgv_loadout.Rows)
if (activate[color.Index].Active == false)
dgv_loadout.DefaultCellStyle.BackColor = Color.Red;
【问题讨论】:
我想你想设置DataGridViewRow
的样式,而不是DefaultCellStyle
。看这个答案***.com/questions/17728009/…
【参考方案1】:
你可以试试这样的:
private void dataGridView1_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
DataGridView dg = sender as DataGridView;
foreach (DataGridViewRow item in dg.Rows)
//your condition
int id = Convert.ToInt32(item.Cells[0].Value);
if (id == 1)
dg.Rows[e.RowIndex].DefaultCellStyle.BackColor = System.Drawing.Color.Red;
我使用 RowsAdded 事件只是为了测试。
【讨论】:
【参考方案2】:您需要为特定单元格设置BackColor
。
for(int col = 0; col < dgv_loadout.Columns.Count; col++)
[your_row].Cells[col].Style.BackColor = Color.Red;
如果这不起作用,请检查您的条件是否被命中。
【讨论】:
以上是关于设置datagridview单元格背景颜色[重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何获取 datagridview 单元格的 Style.BackColor