我有订单管理桌面应用程序,我在dgridview中显示所有订单。
所有订单都有三种类型:Paid
,Not Paid
,In progress
。
因此,如果订单的状态类型为Not Paid
,那么我正尝试在datagridview列表中将bacground颜色仅在所有行中更改为红色。状态为In prigress
的所有订单均为黄色...
那么我可以使用DataGridViewRow
在循环(foreach)内检查col值是否为Not Paid
红色bacground颜色?或任何其他方式设置此
答案 0 :(得分:1)
订阅CellFormatting
活动。
private void DataGridView_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
if (e.ColumnIndex == 1) // specify the desired column number
{
string value = e.Value.ToString();
if (value == "Not Paid")
e.CellStyle.BackColor = Color.Red;
else if (value == "In Progress")
e.CellStyle.BackColor = Color.Yellow;
}
}