读书人

关于在窗口中切换其它窗口的有关问题不

发布时间: 2012-06-23 14:52:43 作者: rapoo

关于在窗口中切换其它窗口的问题不触发FromClosing事件的问题
本人新手,正在学习C#,遇到一些问题,想不通,希望有人指点一二。
有Form1和Form2两个窗口,Form1中有一个panel1和一个按钮btn1
private void btn1_Click(object sender, EventArgs e)
{
this.panel1.Controls.Clear();
Form2 f2= new Form2();
f2.TopLevel = false;
f2.Parent = this.panel1;
f2.Show();
}
现在点击Form1中的btn1可以在panel1中显示Form2,但是如果再点击一下,我认为应该是先将前一个定义的Form2窗口关闭掉,再重新生成一个Form2对象,但是我在Form2中定义FromClosing事件,就是触发不了,就是说原先的Form2没有被关闭,那它又到哪里去了呢?纠结中~

[解决办法]
加上关闭的代码

C# code
foreach (Control item in this.panel1.Controls){    Form2 f;    if ((f = item as Form2) != null)    {        f.Close();    }    item.Dispose();}this.panel1.Controls.Clear();Form2 f2 = new Form2();f2.TopLevel = false;f2.Parent = this.panel1;f2.Show();
[解决办法]
你得执行Close,否则不会触发Closeing事件的

读书人网 >C#

热点推荐