C#中可以根据每行内容的不同来对DataGridView数据表格控制每行的文字颜色、背景颜色进行不同的设置。
效果如下:
实现:
在DataGridView的RowPrePaint事件中进行行颜色控制。
private void dataGridView1_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
{
//示例:根据第4列的状态0,1,2 显示不同的颜色
int status = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells[3].Value);
switch(status)
{
case 0:
dataGridView1.Rows[e.RowIndex].DefaultCellStyle.ForeColor = Color.Red;
break;
case 1:
dataGridView1.Rows[e.RowIndex].DefaultCellStyle.ForeColor = Color.Green;
break;
case 2:
dataGridView1.Rows[e.RowIndex].DefaultCellStyle.ForeColor = Color.Blue;
break;
}
}
如果需要对行的背景色进行控制,将ForeColor改为BackColor即可。