在我的Visual Studio 2008 VB.Net项目中,我在将表单(即打开)设置为主窗体的mdichild后打开多个窗体。除了一个以外,我的大多数形式都能很好地工作。我为所有人做同样的事情。
基本上我宣布新表格:
Using frm As New frmName() With {.variableName = currentVariable}
frm.MdiParent = Me.MdiParent
frm.openForm()
End Using
在我有的表单代码中的openForm
子例程中:
Public Sub openForm()
InitializeDataSources()
... ...
Me.Show()
End Sub
我知道这是有效的,因为如果我删除主表单中的frm.MdiParent = Me.MdiParent
并将Me.Show()
更改为子表单中的Me.ShowDialog()
,那么它就能完美运行。现在(仅适用于一种形式)它只显示一秒钟的形式(当盯着程序时看起来像闪烁)然后关闭它。
我该怎么做才能解决这个问题?
答案 0 :(得分:9)
不知道VB中的USING
是什么,但在C#中,当执行存在块时,它会处理由语句创建的对象。
如果目的相同,那么这就是答案:您正在创建表单:
Using frm As New frmName()
然后你展示它但是
End Using
执行您的表格将被处理,即关闭。