我希望在用户关闭当前 for 时使主菜单窗体大小恢复正常。我已经尝试了各种方法来处理 Closing 事件,但是注意到表单仍然关闭并且不显示消息框似乎有效,提醒我该函数已运行。
主菜单窗体打开但在用户使用当前窗体时最小化。
我的关闭事件处理程序;
private void frm_createCust_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
e.Cancel = true;
MessageBox.Show("Closing");
frm_MainMenu frm_MainMenu = new frm_MainMenu();
frm_MainMenu.WindowState = FormWindowState.Normal;
frm_MainMenu.Show();
//this.Close();
}
提前致谢。
最佳答案
子窗体在关闭时不应该试图影响其父窗体,而父窗体应该处理该逻辑并成为在其代码中应用事件处理程序的窗体:
//somewhere in your main form's code:
SomeChildForm child = new SomeChildForm();
child.FormClosing += (s, args) =>
{
WindowState = FormWindowState.Normal;
Show();
};
child.Show();
关于C# 关闭事件处理程序不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23810629/