子窗体控制父窗体最小化最大化
很简单的一个方法,想了好长时间。后来发现只需两步就OK。
第一步,在子窗体中,类中新建父窗体的对象
public Form1 fm;
第二步,在父窗体中,指定子窗体中的fm为父窗体
Form2 fm2 = new Form2();
fm2.fm = this;
实例:
新建窗体项目,默认From1,然后添加子窗体Form2。
Form1如下图1所示。
图1 From1界面设计
Form2如下图2所示。
图2 From1界面设计
功能说明:点击父窗体的button1,出现Form2窗体。点击父窗体最大化按钮,则Form1窗体最大化。点击父窗体最小化按钮,则Form1窗体最小化。
代码如下所示:
Form1代码如下所示
1 public partial class Form1 : Form 2 { 3 public Form1() 4 { 5 InitializeComponent(); 6 } 7 8 Form2 fm2 = new Form2(); 9 10 private void button1_Click(object sender, EventArgs e) 11 { 12 13 fm2.Show(); 14 } 15 16 private void Form1_Load(object sender, EventArgs e) 17 { 18 fm2.fm1 = this; 19 } 20 }
Form2代码如下所示
1 public partial class Form2 : Form 2 { 3 public Form2() 4 { 5 InitializeComponent(); 6 } 7 public Form fm1; 8 private void button1_Click(object sender, EventArgs e) 9 { 10 fm1.WindowState = FormWindowState.Maximized; 11 } 12 13 private void button2_Click(object sender, EventArgs e) 14 { 15 fm1.WindowState = FormWindowState.Minimized; 16 } 17 }