2013年5月2日 星期四

[除錯] 並未將物件參考設定為物件的執行個體 DataGridViewComboBox [debug]

錯誤:
DataGridViewComboBox
並未將物件參考設定為物件的執行個體

程式:

            For Each dgvr As DataGridViewRow In DataGridView1.Rows
                'If dgvr.Index = DataGridView1.RowCount - 1 Then
                '    Exit For
                'End If
                'If dgvr.IsNewRow Then
                '    MsgBox("HAHA")
                '    Exit For
                'End If
                MsgBox(dgvr.Cells("供應商").Value.ToString.Trim)
            Next

解決:
因為 AllowUserToAddRows = True
所以 DGV 會自動 NewRow 出來

而 NewRow 在 for-loop 裡也會算作一份(index)
但實質上是 Nothing 的資料型態
當 loop 到 NewRow 時,便會發生如圖的錯誤

因此在 for-loop 時,要排除掉
可利用黃色方法或綠色方法

DataGridView 控制項 (Windows Form)

沒有留言:

張貼留言