不能在循环内使用变量计数器

时间:2015-07-21 16:40:29

标签: vb.net vb.net-2010

我在vb.net

中连接了我的应用程序

如果我想从任何行或列中获取值,我使用此代码并且它可以正常工作

DataGridView1.Rows(1).Cells(1).Value.ToString

我的问题是我有一个包含14行的表,我想循环检查每行中的第一个单元格,如果它包含执行其他任务的特定值

如果我在计数器中使用变量i我得到了一个错误

在此代码中

    Private Sub Button24_Click(sender As Object, e As EventArgs) Handles Button24.Click


Dim see As String

For i As Int32 = 0 To 14

        see = DataGridView1.Rows(i).Cells(1).Value.ToString

        If see = "FLOWRATE" Then

        TextBox11.Text = TextBox11.Text & see & "  "

        End If

Next

End Sub

当我按下按钮时出现此错误

An unhandled exception of type 'System.NullReferenceException' occurred in project1.exe

Additional information: Object reference not set to an instance of an object.

2 个答案:

答案 0 :(得分:2)

我怀疑你的意思是For i As Int32 = 0 To 13,而不是14. 14意味着有15行,因为事情是从零开始的。

你可以简单地说这不是硬编码行数,而是做这样的事情:

For i As Int32 = 0 To DataGridView1.Rows.Count - 1
    'Handle each row
Next

答案 1 :(得分:0)

此错误是因为我的参考行不存在。

可以将行索引为1到14或0到13.

你需要适应循环边界