我正在尝试遍历数据网格视图中的行,并根据其存储的值更改单个单元格的颜色。
我已经尝试了以下两种方法,但都不起作用,也没有抛出任何异常。
1:
row.Cells[8].Style.BackColor = Color.Red;
阿拉伯数字:
dgvProperties[row.Index, 8].Style.BackColor = Color.Red;
3(自写这个问题以来的另一种尝试,也不起作用):
dgvProperties.Rows[row.Index].Cells[8].Style.BackColor = Color.Red;
任何帮助表示赞赏。
试试这个,我想这就是你要找的。.
for(int i = 0; i < dataGridView1.Rows.Count; i++)
{
int val = Int32.Parse(dataGridView1.Rows[i].Cells[2].Value.ToString());
if (val < 5)
{
dataGridView1.Rows[i].DefaultCellStyle.BackColor = Color.Red;
}
学分:这里
试试这个:
排。细胞[i].样式["背景颜色"] = "红色";
如果无论如何都不起作用,您以错误的方式获取该行
下面是工作代码的一个 VB.NET 示例,但是,将其应用于 C# 应用程序将变得微不足道:
Private Sub dgvResults_DataBindingComplete(
ByVal sender As Object,
ByVal e As System.Windows.Forms.DataGridViewBindingCompleteEventArgs
) Handles dgvResults.DataBindingComplete
Dim daysOpenThreshold As Integer = 10 'Some trivial value for this example.
For Each r As DataGridViewRow In dgvResults.Rows
If CInt(r.Cells(2).Value) >= daysOpenThreshold Then
Dim style As New DataGridViewCellStyle
style.BackColor = Color.Red
style.ForeColor = Color.White
r.DefaultCellStyle = style
End If
Next
End Sub