例如有下面的需求需要实现:程序主画面中弹出一个子窗口。此时主画面仍然可以接收用户的操作(子窗口是非模态的)。子窗口上进行某些操作,根据操作的结果要在主画面上显示不同的数据。
即如下图所示:
大多数我们会这样做:
表单1窗口定义:
1 public partial class Form1 : Form 2 { 3 4 public string LabelName 5 { 6 get { return this.label1.Text; } 7 set { this.label1.Text = value; } 8 } 9 10 public Form1() 11 { 12 InitializeComponent(); 13 this.button1.Click += new EventHandler(button1_Click); 14 } 15 16 /// <summary> 17 /// 按钮触发 18 /// </summary> 19 /// <param name="sender"></param> 20 /// <param name="e"></param> 21 private void button1_Click(object sender, EventArgs e) 22 { 23 Form2 form2 = new Form2(); 24 form2.form1 = this; 25 form2.Show(); 26 } 27 }