2011-03-29 83 views
2

在我的Visual Studio 2008中VB.Net项目我设置形式后打开多种形式(即开口)为主要形式的mdichild后立即关闭。除了一个外,这在我的大多数表单中都非常有效。我为他们做了完全相同的事情。Visual Studio 2008的窗口状开口

基本上我宣布新的形式:

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()。现在(仅适用于一种形式),它显示仅第二(在程序盯着时看起来像闪烁)的形式,然后关闭它。

我应该怎么做来解决这个问题?

回答

9

不知道是什么USING是在VB,但在C#中,当执行存在块是处置由语句创建的对象。 如果目的是相同的,那么这就是答案:你正在创建的形式:

Using frm As New frmName()

然后告诉你,但是当

End Using 

执行您的表格将被布置,即关闭。

+0

太谢谢你了!这一直在困扰我一段时间。 :) – Kyra 2011-03-29 17:09:22

+1

总是很高兴帮助:) – Adi 2011-03-29 17:20:04