C# [重新登陆功能]与[X关闭]功能冲突,欲知详情,请点击我
请教各位一个问题,描述如下:
现有一winform主窗体,发现点击右上角的[X]关闭按钮之后,只是关闭了窗体界面,而没有真正得退出程序进程。于是,我在form_closing事件里面加入如下代码:
private void MainFormAdmin_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason != CloseReason.ApplicationExitCall)
{
DialogResult re = MessageBox.Show("确定要退出系统?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
if (re == DialogResult.Yes)
{
e.Cancel = false;
Application.Exit();
}
else
{
e.Cancel = true;
}
}
}
private void 重新注册ToolStripMenuItem_Click(object sender, EventArgs e)
{
DialogResult MsgBoxResult;
MsgBoxResult = MessageBox.Show("确定要重新注册系统?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button2);
if (MsgBoxResult == DialogResult.Yes)
{
this.Close();
Login lg = new Login();
lg.Show();
}
}
[解决办法]
现有一winform主窗体,发现点击右上角的[X]关闭按钮之后,只是关闭了窗体界面,而没有真正得退出程序进程
//应该找到点击关闭按钮为什么没有退出进程,关闭主窗体正常来说应该是进程退出的,如果没有退出应该找出进程没有退出的原因,可能是其它的资源没有关闭,而不是直接 Application.Exit(); 看看Program中的Main()方法,也就是你程序的主入口,或者调出你主窗体的代码。
[解决办法]
给你个 思路 你 点击 重写登陆 时 把 主窗体隐藏
this.visible = false;
Login log = new Login()
if (log.ShowDialog() == dialog.ok)
{
//你需要执行相关 的方法
//显示窗体
this.visible = true;
}