如题,我的意思是下面这样
Form1 form1 = new Form1();
Application.Run(form1);Form1.class里
Form2 form2 = new Form2();
form2.ShowDialog();
Form2.Class里
Form3 form3 = new Form3();
form2.Owner = this;当关闭Form2的时候,Form3的FormClosed事件不被响应。如果
Form1.class里
Form2 form2 = new Form2();
form2.Show();
~~~~~~~~
的话,
关闭Form2的时候,Form3的FormClosed事件被响应。有人知道是什么原因么?
Form1 form1 = new Form1();
Application.Run(form1);Form1.class里
Form2 form2 = new Form2();
form2.ShowDialog();
Form2.Class里
Form3 form3 = new Form3();
form2.Owner = this;当关闭Form2的时候,Form3的FormClosed事件不被响应。如果
Form1.class里
Form2 form2 = new Form2();
form2.Show();
~~~~~~~~
的话,
关闭Form2的时候,Form3的FormClosed事件被响应。有人知道是什么原因么?
Form3 form3 = new Form3();
form2.Owner = this;2or 3?
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.Owner = this;
f2.ShowDialog();
}
}public partial class Form2 : Form
{ Form3 f3 = new Form3();
public Form2()
{
InitializeComponent();
} private void Form2_Load(object sender, EventArgs e)
{
f3.Owner = this;
f3.ShowDialog();
}
}public partial class Form3 : Form
{
public Form3()
{
InitializeComponent();
}
private void Form3_FormClosed(object sender, FormClosedEventArgs e)
{
MessageBox.Show("aaaaa");
}
}
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.Owner = this;
f2.ShowDialog();
}
}public partial class Form2 : Form
{ Form3 f3 = new Form3();
public Form2()
{
InitializeComponent();
} private void Form2_Load(object sender, EventArgs e)
{
f3.Owner = this;
}
}public partial class Form3 : Form
{
public Form3()
{
InitializeComponent();
}
private void Form3_FormClosed(object sender, FormClosedEventArgs e)
{
MessageBox.Show("aaaaa");
}
}
Form1.class里
Form2 form2 = new Form2();
form2.Show();
~~~~~~~~
的话,
关闭Form2的时候,Form3的FormClosed事件被响应。
而form2.ShowDialog();
关闭Form2的时候,Form3的FormClosed事件不被响应。
放在Closing事件中比较好点。
private void Form3_FormClosing(object sender, FormClosingEventArgs e)
{
MessageBox.Show("aaaaa");
}
}