当我单击一个按钮关闭一个表单上的整个程序(Error1.vb)时,另一个表单不会关闭,如果我关闭主窗口(form1.vb)整个程序关闭。这是我的代码:
Dim proc = Process.GetProcessesByName("Server_Status.vshost")
For i As Integer = 0 To proc.Length - 1
proc(i).CloseMainWindow()
Next i
并且,如果这有帮助,这里是应用程序的我的设置(应用程序,编译)(截图):
答案 0 :(得分:1)
您确实知道您的表单是否为 Form1.vb ,并且您的启动表单就像您的设置说...那么您所要做的就是调用 form1.close()< / strong>关闭所有内容,即使你有一个其他表单上的按钮,如果你想让程序关闭完全调用 form2.button1.click事件上的form1.close()。 / p>
编辑:如果您打开单独的线程或内存中的任何其他对象关闭它们(可能会关闭form1.close())
答案 1 :(得分:0)
来自MSDN:
您可以通过在类中放置一个名为Main的方法,将表单用作应用程序的起始类。在Main方法中添加代码以创建和显示表单。您还需要将STAThread属性添加到Main方法,以便运行表单。关闭起始表单后,应用程序也将关闭。
我认为这是从winforms模板创建新项目时的默认行为。
请务必阅读其他评论:http://msdn.microsoft.com/en-us/library/system.windows.forms.form.aspx