日期:2014-05-18 浏览次数:20892 次
private void button1_Click_1(object sender, EventArgs e) { Form1 frm = new Form1(); frm.Closed += new EventHandler(frm_Closed); frm.Show(); } void frm_Closed(object sender, EventArgs e) { //调用到这的话表示Form1已经关闭了 }
------解决方案--------------------
使用全局变量是很不好的设计.
如果想使用子窗口的什么数据的话,可以把sender参数as成子窗口类型, 就能使用子窗口的数据了.
public class ParentForm : Form { private void MyFunction() { ChildForm child = new ChildForm(); child.Closed += new EventHandler(child_Closed); child.Show(); } private void child_Closed(object sender, EventArgs e) { ChildForm a = sender as ChildForm; MessageBox.Show(a.MyAttribute); // 这里就可以使用子窗口对象的数据了 } } public class ChildForm : Form { public String MyAttribute { get { return "ChildForm "; } } }