小例子(二)、winform窗体间的关系

时间:2023-03-08 16:22:08
小例子(二)、winform窗体间的关系

写一个关于winform窗体间的关系

1、登陆,思路:登陆后隐藏登陆窗体,关闭Form2时结束整个应用程序。

        //登陆窗体
   private void button2_Click(object sender, EventArgs e)
{
Form2 fr = new Form2();
this.Visible = false;//隐藏窗体
fr.Show();
}
       //注册一个关闭时结束程序的事件,FormClosing
private void Form2_FormClosing(object sender, System.Windows.Forms.FormClosingEventArgs e)
{
Application.Exit();//结束整个程序
}

2、通过Form2关闭,已经打开的Form3窗体。

    1,创建一个Class类

      public static class Class1
{
public static Form3 f3;//存form3
}

    2,在form3加载时,将class类中的f3赋值

         private void Form3_Load(object sender, EventArgs e)
{
Class1.f3 = this;//将form3的对象放在class类中
}

    3,在form2中直接关闭class中的f3即可关闭Form3

         private void button4_Click(object sender, EventArgs e)
{
Class1.f3.Close();//关闭Form3
}

3、通过打开的form2刷新已经开启的form4(其实直接在2的基础上加了个关闭再打开)

         private void button2_Click(object sender, EventArgs e)
{
Class1.f4.Close();//先关闭form4
Form4 fr = new Form4();
fr.Show();//再打开form4
}

上图:

小例子(二)、winform窗体间的关系