循环通过替代(每隔一个)DataGridView列

时间:2016-12-02 10:35:43

标签: .net vb.net loops datagridview

我知道你可以遍历DataGridView的交替行,但我无法找到循环交替列的任何帮助。我尝试过使用下面的代码,这听起来像在纸上起作用,但一直在破碎。

    Dim i As Integer

    i = i + 1

    For i = 1 To 5
        Dim value6 As Integer = DataGridView1.Rows(e.RowIndex).Cells(i).Value
        Select Case value6
            Case "1"
                DataGridView1.Rows(e.RowIndex).Cells(i).Style.BackColor = Color.LightBlue
            Case "2"
                DataGridView1.Rows(e.RowIndex).Cells(i).Style.BackColor = Color.Chartreuse
            Case "3"
                DataGridView1.Rows(e.RowIndex).Cells(i).Style.BackColor = Color.Orange
        End Select
    Next i

当它到达带有日期的列时它会一直断开,因为它不是整数。

我已经插入了下面DataGridView的图片,但我希望代码在每个其他列中循环一个整数并读取该值,从第(2)行开始,以第(6)行结尾

任何帮助将不胜感激!

DataGridView Image

1 个答案:

答案 0 :(得分:0)

好吧,如果你从列索引2开始,你需要更改循环开始的数字。要让循环遍历备用列,请添加'步骤2'在你的for语句结束时这样:

For i = 2 To 6 Step 2
    Dim value6 As Integer = DataGridView1.Rows(e.RowIndex).Cells(i).Value
    Select Case value6
        Case "1"
            DataGridView1.Rows(e.RowIndex).Cells(i).Style.BackColor = Color.LightBlue
        Case "2"
            DataGridView1.Rows(e.RowIndex).Cells(i).Style.BackColor = Color.Chartreuse
        Case "3"
            DataGridView1.Rows(e.RowIndex).Cells(i).Style.BackColor = Color.Orange
    End Select
Next i

应该这样做。

'步骤'关键字会导致索引变量在每次迭代后按指定的数字增加。