我正在尝试制作这个Windows应用程序,您可以在其中注册健身会员及其每月付款。我有这个DataGridView,它显示成员的一些属性,其中一个是字段STATUS。此字段包含单词PAID或UNPAID(如果成员付费与否,则从某些代码分配)。现在我想要做的是:如果Status字段是UNPAID,我希望该行为RED(背景颜色)。那可能吗 ?如果是,我该怎么做?
答案 0 :(得分:1)
我认为你必须循环遍历网格视图中的行,然后比较值:
foreach (DataGridViewRow row in grid.Rows)
if (row.Cells["STATUS"].Value =="UNPAID")
{
row.DefaultCellStyle.BackColor = Color.Red;
}
答案 1 :(得分:1)
对于名为DataGridView
的{{1}}。尝试类似下面的内容
dgv
这会使你的'UNPAID'细胞变红,其他细胞变绿。这假设您只需要可用的值。
我希望这会有所帮助。
编辑。要为整行着色,您可以使用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;
}
}
等
答案 2 :(得分:0)
你可以做的是将行中单元格的颜色设置为红色,如下所示:
foreach (DataGridViewRow row in dataGridView1.Rows)
{
if (row.Cells["STATUS"].Value =="UNPAID")
row.DefaultCellStyle.BackColor = Color.Red;
}
将把Status的值未付的单元格行设置为红色。