如何关闭所有表格
我使用wpf vb 2010
加载其他形式我喜欢
Private frm As MainWindow = New MainWindow
打开我使用frm.Show()
的窗口
并关闭它我使用frm.Close()
现在我有两种形式,如form1和form2
我想在点击按钮时打开form2 - 好吧很容易
问题当我使用按钮
打开form2时,如何从form2关闭form1当我用户
时Private frm As form1 = New form1
frm.Close()
它像一个cricle,无法关闭
答案 0 :(得分:1)
最简单的方法是为Form2创建一个构造函数,该构造函数在创建时引用了Form1的实例。 Form2的新实例可以保留该引用并在需要时关闭Form1的实例。
Public Class Form2
Private Property formOne As Form1
Public Sub New()
End Sub
Public Sub New(Form1 frm)
formOne = frm
End Sub
Public Sub CloseFormOne()
If formOne != null Then
formOne.Close()
End If
End Sub
End Class
答案 1 :(得分:0)
项目+属性,应用程序选项卡,将关闭模式更改为“当最后一个表单关闭时”。这可确保您的应用在所有窗口关闭之前不会退出。
现在您可以编写如下代码:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim frm As New Form2
'' Optional: keep it in the same spot
frm.StartPosition = FormStartPosition.Manual
frm.Location = Me.Location
frm.Size = Me.Size
'' Display the form
frm.Show()
'' Close the current form
Me.Close()
End Sub