如何在打开下一个表单(VB.net Windows表单)之后关闭我的表单,如“下一步”按钮
我试过Form2.show()
它显示了form2,但没有关闭form1,如果我输入me.close()
,整个项目就会停止
答案 0 :(得分:4)
如果您只希望Form2
可见,则可以在显示Form1
时隐藏Form2
,然后在关闭Form1
时再次显示Form2
。发生了什么事情,一旦你关闭Form1
你的程序将退出,请参见下面的编辑。
像这样。
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim frm2 As New Form2
AddHandler frm2.FormClosed, AddressOf Form2Closing
frm2.Show()
Me.Hide()
End Sub
Private Sub Form2Closing(sender As Object, e As FormClosedEventArgs)
Me.Show()
RemoveHandler DirectCast(sender, Form2).FormClosed, AddressOf Form2Closing
End Sub
如果您只想关闭Form1
并且在Form2
打开后不再返回,则可以从启动表单关闭时更改项目设置(是当最后一个表单关闭时,您可以关闭第一个表单而不关闭您的应用程序。
答案 1 :(得分:0)
您必须指定要关闭的内容:
Form1.Close()
答案 2 :(得分:0)
您最好不关闭您的表单后再打开另一个表单,除非您希望其他表单也关闭。否则会导致所有权和可见性副作用,从长远来看,你真的不想处理它。
这正是您的主窗体上的me.close()
停止您的项目的原因。您只需考虑Microsoft在Winforms应用程序中添加的范例。如果不这样做,那么你肯定会遇到麻烦。
相反,您可能正在寻找一个向导控件。