我遇到了问题,我有点困惑,所以我只是简单地说:
我有2个表单(form1和form2)。
Form1有一个tabcontrol,它在tabpage中显示form2。 Form2有一个button1,它自己关闭,因此是tabpage。
我正在将此代码用于button1:
Dim f1 As New Form1()
f1.tabControl1.Controls.Remove(f1.tabControl1.Selectedtab)
使用上面的代码我得到了一个异常,所以为了确保tabpage是在那里我在删除tabpage之前在button1中添加它:
Console.Writeline(f1.tabControl1.TabCount)
使用实例显示0.但使用默认实例显示1:
Console.Writeline(Form1.tabControl1.TabCount)
我想知道我是否在创建实例
时做错了什么Pd:我知道我可以用这个:
Form1.tabControl1.Controls.Remove(Form1.tabControl1.Selectedtab)
但我需要使用实例
编辑:
我使用时收到了NullReferenceException:
Dim f1 As New Form1()
f1.tabControl1.Controls.Remove(f1.tabControl1.Selectedtab)
正如我所说,如果我使用deafult实例
,它会起作用编辑2:
这是我用来创建tabpage的代码,这个方法在form1中,我在form1的按钮的click事件中调用它:
Dim tabpage1 as new Tabpage
Dim f2 as new Form2
tabpage1.Controls.Add(f2)
f2.show()
tabControl1.TabPages.Add(tabpage1)
答案 0 :(得分:0)
我得到了答案: 在form2中:
Dim f1 As New Form1
Public Sub New(ByRef _f1)
' TODO: Complete member initialization
InitializeComponent()
f1 = _f1
End Sub
我只需要引用form1