C#DataGridView高亮显示行

C#DataGridView高亮显示行,c#,datagridview,C#,Datagridview,DataGridView。。我的重点是第一栏。在网格加载上突出显示具有相同值的行。 假设行中1的高亮显示为红色,行中3的高亮显示为蓝色,行中5的高亮显示为绿色.. 或1为红色,3为无突出显示,5为红色(类似替代颜色)。 想法是用相同的值直观地分隔行。 有什么想法吗,伙计们?提前谢谢 Column1 | ------ 1 1 3 3 3 5 5 已尝试,但无法想象视觉分离: int i, i_temp = 0; foreach (DataGridViewRow

DataGridView。。我的重点是第一栏。在网格加载上突出显示具有相同值的行。
假设行中1的高亮显示为红色,行中3的高亮显示为蓝色,行中5的高亮显示为绿色..
或1为红色,3为无突出显示,5为红色(类似替代颜色)。

想法是用相同的值直观地分隔行。

有什么想法吗,伙计们?提前谢谢

Column1 | 
------
1 
1     
3
3
3      
5 
5   
已尝试,但无法想象视觉分离:

int i, i_temp = 0;
foreach (DataGridViewRow dr in dgv.Rows)
        {
            i = int.Parse(dr.Cells["Column1"].Value.ToString());
            if (i_temp == int.Parse(dr.Cells["Column1"].Value.ToString()))
            {
                dr.DefaultCellStyle.BackColor = Color.Red;
                i_temp = i;
            }  
        }

执行此操作的指定方法是在CellFormatting事件中

private void MyGrid_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
    var dr = MyGrid.Rows[e.RowIndex];
    var intVal = int.Parse(dr.Cells["Column1"].Value.ToString());
    switch (intVal)
    {
        case 1:
            e.CellStyle.BackColor = Color.Red;
            break;
        case 3:
            e.CellStyle.BackColor = Color.Blue;
            break;
        case 5:
            e.CellStyle.BackColor = Color.Green;
            break;
        default:
            break;
    }
}
请注意,只有在e.ColumnIndex属性上设置格式化条件,才能将此应用于某些列