如果要插入变量Form2,我使用它..
Dim Variable As New Form2
但如果我有两种形式的名字相同的功能,我会用if来做。
if 1 = 1 Then
Dim Variable As New Form2
Else
Dim Variable As New Form3
End If
这很好,但是如果我在下面的代码中开始使用这个变量,如果我在没有条件的情况下使用,一切都很好,在条件似乎理解该怎么做时使用会发生错误。
Variable.DataGridView1.Rows.Add(row)
对象引用未设置为对象的实例
答案 0 :(得分:1)
您需要先声明变量,然后将其分配给特定类型:
Dim Variable As Form = Nothing
If 1 = 1 Then
Variable = New Form2()
Else
Variable = New Form3()
End If
但通常你会通过实现公共接口的每个表单以面向对象的方式执行此操作。
然后你可以这样做:
Dim Variable As IForm
If 1 = 1 Then
Variable = New Form2() 'Form2 implements IForm
Else
Variable = New Form3() 'Form3 implements IForm
End If