我通过直接分配数据表从数据库中填充Datagridview。在Datagridview中有一些可编辑的列和一些不可编辑的列。我想将可编辑列的颜色设置为'黄色&# 39 ;.
我知道我可以设置列的颜色,如
myGrid.Columns["myColumn"].DefaultCellStyle.BackColor = Color.Red;
但是如何检查可编辑的角色并根据它设置颜色?
更新: 这就是我正在寻找的......黄色单元格应该是可编辑的。基本上,所谓的WholeSaleRate,零售价格等单元格应该是可编辑的。
答案 0 :(得分:1)
我可以理解您的问题,您想要更改cells
的可编辑datagridview
的颜色吗?
您可以使用DataGridViewCellFormattingEvent
的{{1}}事件来完成此操作,并检查列是datagridview
,然后更改readonly
的背景。
datagridviewcell
输出:
答案 1 :(得分:0)
答案 2 :(得分:0)
这只是使列可编辑的示例代码,dgvSample是您在表单中添加的DataGridView。在这里,我使所有奇数列都可编辑。因此,同样地,您可以使用带有复选框的隐藏列,并检查其是否可编辑并实现相同。
dgvSample.AllowUserToAddRows = false;
dgvSample.AllowUserToDeleteRows = false;
for (int i = 0; i <= 10; i++)
{
string[] values = new string[] { "1", "Name" };
dgvSample.Rows.Add(values);
if (i % 2 == 0)
{
DataGridViewRow r = dgvSample.Rows[dgvSample.Rows.Count - 1];
r.ReadOnly = true;
}
else
{
r.DefaultCellStyle.BackColor = Color.Yellow;
}
}