2016-12-02 27 views
0

我知道你可以循環使用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

回答

0

好吧,如果你開始在列索引2,您需要更改號碼爲循環的開始。爲了得到循環遍歷交替列,加上「步驟2」到您的結尾聲明如下:

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 

應該這樣做。

'Step'關鍵字會導致索引變量在每次迭代後增加您指定的數字。

+0

我不得不改變'對於我= 2到* 6 *步驟2'它的工作,但這正是我要找的感謝大衛! –

+0

哎呀是的。對不起,關於:)回答編輯:) –