Vb.net 如何嵌套一个";试试“如果”;语句DataGridView

Vb.net 如何嵌套一个";试试“如果”;语句DataGridView,vb.net,datagridview,Vb.net,Datagridview,我想做的是:首先:检查单元格值是否存在,如果为TRUE,则继续。 第二:如果MsgBox为False,则为无效票证 Private Sub changefound() Dim findtxt As String = txt_Find.Text Try If DataGridView2.Rows.Count > 0 Then For i As Integer = 0 To DataGridView2.Rows.Count - 1

我想做的是:首先:检查单元格值是否存在,如果为TRUE,则继续。 第二:如果MsgBox为False,则为无效票证

Private Sub changefound()

    Dim findtxt As String = txt_Find.Text
    Try
        If DataGridView2.Rows.Count > 0 Then
            For i As Integer = 0 To DataGridView2.Rows.Count - 1
                Dim CellChange As String = DataGridView2.Rows(i).Cells("CODE").Value.ToString 'This is line 363

                If CellChange.Contains(findtxt) = True Then
                    If Not IsDBNull(DataGridView2.Rows(i).Cells("STATUS").Value) _
    AndAlso DataGridView2.Rows(i).Cells("STATUS").Value = "IN" Then
                        MsgBox("Ticket Used")
                        Exit Sub
                    Else
                        With DataGridView2
                            .Rows(i).Cells("STATUS").Value = "IN"
                            Exit Sub
                        End With
                    End If
                End If
            Next
        End If
    Catch e As Exception
        MessageBox.Show(e.ToString())
    End Try

    '''''''''''''''''''If Flase Only Works Here''''''''''''''''''''''

    Try
        If DataGridView2.Rows.Count > 0 Then
            For i As Integer = 0 To DataGridView2.Rows.Count - 1

                Dim CellChange As String = DataGridView2.Rows(i).Cells("CODE").Value.ToString

                If CellChange.Contains(findtxt) = False Then
         MsgBox("InValid Ticket")
                    Exit Sub
                End If
            Next
        End If
    Catch e As Exception
        MessageBox.Show(e.ToString())
    End Try
End Sub
问题是我一直得到错误的MSGBOX

好的,您有
捕获e作为异常MessageBox.Show(e.ToString())
,所以有一个带有错误的消息框是应该出现的。你还指望什么吗?请具体说明。另外,请注意格式化您的代码,使它看起来很好。去掉所有我们不需要看到的东西,也就是说,只留下与您的问题相关的代码。去掉Try/Catch并修复实际错误-NRE不是可以忽略或只是记录的东西。如果var为nothing,则可以使用
测试nothing,然后…
如果我将try异常切换到msgbox(“未找到”),则可能会复制@puropoix。它可以工作,但我希望能够执行try…并且如果CellChange.Contains(FindText),则能够同时拥有这两个选项=True如果CellChange.Contains(findtxt)=False则执行其他操作如果看到链接则结束-如果用户可以添加行,则循环过长