我正在使用 WinForms。 我有两个表单,Form1(主要表单)和 Form2(子表单)。 当用户单击在 Form2 顶部的“X”按钮时,我想关闭 Form1。 在我的代码中,我试图通过 this.Owner.Close();
来关闭 Form1,但这会引发错误。 为什么会出现这个错误,我应该如何在用户单击表单顶部的“X”按钮时从子表单关闭主表单。
错误
System.StackOverflowException 类型的未处理异常发生在 System.Windows.Forms.dll 中
表单 1
private void btn_Open_Form2_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.Owner = this;
frm2.Show();
this.Hide();
}
表单2
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
this.Owner.Close();
}
Application.Exit();
- Xaqron