c# 如何实现子窗口关闭父窗口也关闭

其实是窗口间通讯的问题,在form1上打开form2 ,form2 关闭时关闭form1

实现方法:

在子窗口form2中声明事件:

    public delegate void childclose();
    public event childclose closefather;

    然后在它的关闭事件中触发本事件:

     private void Form2_Closed(object sender, System.EventArgs e)
     {
       //用事件去关闭主窗口
        closefather();
      }

在父窗口form1中(比如登陆窗口中):

   然后弹出子form2窗体的地方这样写:

   Form2 ff=new Form2();
    ff.closefather+=new childclose(this.closethis);  //closethis()是父窗体中的一个方法
    ff.Show();

     public void closethis()
     {
          this.Close();
     }

完!
 

你可能感兴趣的:(c# 如何实现子窗口关闭父窗口也关闭)