根据问题。所以我在应用程序启动时加载了一个主窗口(MainForm)。然后在MainForm_load事件中,它会显示另一个表单(LoginForm.showDialog())。
我苦苦思索的是,如果用户关闭LoginForm(右上角的x标志)它关闭应用程序怎么办? 在LoginForm中只有一个标有" Login"
的按钮之前的答案:)
我一直在尝试这个
private void frmLogin_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason == CloseReason.UserClosing)
{
Application.Exit();
}
else
{
this.Dispose();
}
}
但它在Application.Exit()
上的操作异常无效所以我想要的只是当我使用[x]关闭按钮关闭此登录表单时,应用程序退出。
答案 0 :(得分:2)
在Program.cs中执行此操作,如下所示:
static void Main() {
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
using (var login = new LoginForm()) {
if (login.ShowDialog() != DialogResult.OK) return;
}
Application.Run(new MainForm());
}
答案 1 :(得分:0)
我不应该在第一个使用frmLogin_FormClosing事件。
我使用frmLogin_FormClosed
private void frmLogin_FormClosed(object sender, FormClosedEventArgs e)
{
if (e.CloseReason == CloseReason.UserClosing)
{
Application.Exit();
}
}
感谢所有帮助和关注的人:)