C#窗体退出事件提示对话框解决方案
来源:互联网 发布:怎么设计淘宝店标 编辑:程序博客网 时间:2024/05/17 08:28
最近刚刚学习C#,在登录父窗体主界面关闭事件写入代码:
if (DialogResult.Yes == MessageBox.Show("是否关闭本系统?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information))
{application.exit();
}
else
{
e.Cancel = true;
}
出现两次退出对话框,提示是否退出系统,第一次点击退出后弹出第二个对话点击【否】出现无法退出系统,隐藏的登录界面无法退出,如果点击【是】可以退出系统,但是弹出两次退出窗体还是比较麻烦。如图
第一个弹出界面 第二个弹出界面
对比了几个窗体退出的事件
1.this.Close(); 只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出;
2.Application.Exit(); 强制所有消息中止,退出所有的窗体,但是若有托管线程(非主线程),也无法干净地退出;
3.Application.ExitThread(); 强制中止调用线程上的所有消息,同样面临其它线程无法正确退出的问题;
4.System.Environment.Exit(0); 这是最彻底的退出方式,不管什么线程都被强制退出,把程序结束的很干净。
将Application.Exit(); 更换成System.Environment.Exit(0); 代码如下:
if (DialogResult.Yes == MessageBox.Show("是否关闭本系统?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information))
{
System.Environment.Exit(0);
}
else
{
e.Cancel = true;
}
问题得到完美解决。得到我想要的结果:只出现一个弹出窗体,点击【是】退出系统,点击【否】停留在主界面中。
此贴希望对大家学习C#开发有所帮助
- C#窗体退出事件提示对话框解决方案
- C# 退出提示 事件提示两次问题
- 【mahapps.metro】WPF窗体关闭,提示用户是否退出对话框
- C# win form退出窗体时对话框实用
- vs2005 窗体退出事件
- C# 生成事件失败 提示“已退出 代码 4”问题解决
- Swing 窗体关闭对话框提示
- Swing 窗体关闭对话框提示
- C#退出提示
- C# 窗体退出和控制台退出
- C#窗体程序的退出
- C#退出当前窗体,显示另一个窗体
- C#窗体解决方案
- C#退出时弹对话框确认退出
- C# 使用Thread多线程,窗体关闭后进程不退出的解决方案
- c#窗体事件
- C# 窗体事件备忘录,
- 退出窗体提示框避免出现两次
- 使用webpack打包ES6代码
- python学习笔记(四)
- faster rcnn训练过程内存占用
- 【2016-08-15】spring 的一些注解
- android studio checkout svn 后无更新提交图标
- C#窗体退出事件提示对话框解决方案
- Codeforces Round #344 (Div. 2)C. Report
- Codeforces Round #290 (Div. 2)B. Fox And Two Dots(dfs)
- 【CodeForces】508C - Anya and Ghosts(贪心 & 模拟)
- linux下采用ps、jstack命令排查命中java应用中占用CPU高的代码
- 简单实现护目镜功能
- BZOJ 2440: [中山市选2011]完全平方数(二分答案 + 莫比乌斯函数 + 容斥原理)
- makefile模板
- CodeForces 697B Barnicle