从子窗体关闭父窗体

从子窗体关闭父窗体

问题描述:

我的窗体有问题。我有一个父母和孩子的形式。在儿童形式中,我有一个按钮。我想使用按钮关闭父窗口并创建新实例父窗体并显示新的父窗体。 任何人都可以帮助我? 我试图从子窗体关闭父窗体

private Form1 m_parent; 

     public Form2(Form1 frm1) 
     { 
      InitializeComponent(); 
      m_parent = frm1; 
     } 

和 是m_parent.Close()之后,但只有我得到的是两种形式被关闭,这是它。 m_parent后,我创建新的实例,但我的应用程序已关闭。

+0

问:到目前为止您尝试了什么?问:谁是父窗口的父母?是否有一些“主要形式”可以接收到“打开新表单”的消息?或者当你关闭表单时你的程序会真正退出? – paulsm4 2011-12-18 18:34:11

+0

我到目前为止尝试过。 Owner.Close和this.ParentForm但没有结果 – edi233 2011-12-18 18:38:07

+0

不要使用this.parentform我认为你可以使用父母关闭它 – 2011-12-18 18:47:59

calling parent functions from child form

 Main frm = new Main(); 
     frm.Show(); 
     frm.Activate(); 
     this.Hide(); 

这将隐藏目前的形式,并显示主要形式。

+0

谢谢。我解决了我的问题:) – edi233 2011-12-18 19:09:13

+0

然后欢呼:) .. – 2011-12-18 19:10:46

+0

但是,这不是你最初问:“我想使用按钮关闭父窗口,并创建新的实例父窗体” – paulsm4 2011-12-18 21:24:49

你可以从父母的孩子获得一个ref,然后使用父母的close方法。