C# 为DataGridView行指定颜色
我正在尝试制作这个Windows应用程序,您可以在其中注册健身房会员及其每月付款。我有一个DataGridView,其中显示了成员的一些属性,其中一个是字段状态。此字段包含“已付款”或“未付款”一词(如果成员已付款或未付款,则从某些代码中指定)。现在我要做的是:如果Status字段未支付,我希望该行为红色(背景色)。可能吗?如果是,我该怎么做?我认为您必须在网格视图中循环行,然后比较值:C# 为DataGridView行指定颜色,c#,winforms,C#,Winforms,我正在尝试制作这个Windows应用程序,您可以在其中注册健身房会员及其每月付款。我有一个DataGridView,其中显示了成员的一些属性,其中一个是字段状态。此字段包含“已付款”或“未付款”一词(如果成员已付款或未付款,则从某些代码中指定)。现在我要做的是:如果Status字段未支付,我希望该行为红色(背景色)。可能吗?如果是,我该怎么做?我认为您必须在网格视图中循环行,然后比较值: foreach (DataGridViewRow row in grid.Rows) if (r
foreach (DataGridViewRow row in grid.Rows)
if (row.Cells["STATUS"].Value =="UNPAID")
{
row.DefaultCellStyle.BackColor = Color.Red;
}
对于名为
dgv
的DataGridView
。试试下面的方法
foreach (DataGridViewRow row in dgv.Rows)
{
if (row.Cells["STATUS"].Value != null &&
row.Cells["STATUS"].Value.ToString().CompareTo("UNPAID") == 0)
{
row.Cells["STATUS"].Style.BackColor = Color.Red;
}
else
{
row.Cells["STATUS"].Style.BackColor = Color.Green;
}
}
这将使您的“未付”单元格变为红色,其他单元格变为绿色。这假设您只需要输入可用的值
我希望这有帮助
编辑。要给整行着色,可以使用
row.DefaultCellStyle.BackColor=Color.Red
等。您可以将行中单元格的颜色设置为红色,如下所示:
foreach (DataGridViewRow row in dataGridView1.Rows)
{
if (row.Cells["STATUS"].Value =="UNPAID")
row.DefaultCellStyle.BackColor = Color.Red;
}
Wich会将状态值未付的单元格行设置为红色。这可能会有帮助:请检查此链接认为这很有帮助[1]:我实际上希望整行都是红色的,但看起来更好!谢谢:)干杯