//新建三个窗体和按钮,当点第一个窗体按钮时跳转到第二个窗体,当点第二个窗体按钮时跳转到第三个窗体,当点第三个窗体按钮时关闭所有窗体。
//----1.第一个窗体程序----
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//按钮点击事件
private void btn1_Click(object sender, EventArgs e)
{
//点击第一个按钮时跳转到二个按钮
Form2 frm2 = new Form2();
frm2.Show();
MessageBox.Show("跳转到第二个窗体了");
}
private void Form1_Load(object sender, EventArgs e)
{
//当第一个窗体运行时将当前Form1对象存入静态字段
//this代表当前窗体
Test._frm1=this;
}
}
//-----2.新建个静态类,用于将Form1对象存入静态字段,后面Form3调用该静态字段,以达到关闭所有窗体的效果。------
namespace WinForm
{
//静态类在整个项目中都是资源共享的
public static class Test
{
//声明一个Form1类型的静态字段
public static Form1 _frm1;
}
}
//-----3.点击第二个按钮时,跳转到第三个窗体----
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
//按钮点击事件
private void btn2_Click(object sender, EventArgs e)
{
//跳转到第三个按钮
Form3 frm3 = new Form3();
frm3.Show();
MessageBox.Show("跳转到第三个窗体了");
}
}
//-----4.点击第三个窗体的按钮时,关闭所有窗体----
public partial class Form3 : Form
{
public Form3()
{
InitializeComponent();
}
//按钮点击事件
private void btn3_Click(object sender, EventArgs e)
{
//关闭窗体1主窗体,等于关闭所有窗体
Test._frm1.Close();
MessageBox.Show("已关闭所有窗体");
}
}
原文地址:https://blog.51cto.com/12679593/2397678