我的Winforms应用程序有一个对话框,在第一次运行时打开以捕获SQL连接字符串。该对话框由MessageBox触发,捕获表单显示用户点击" OK"。我喜欢的是当点击取消按钮时退出的应用程序,但是它没有按照我期望的方式工作。
while (GlobalSettings.getSqlConnection() == "")
{
var result = MessageBox.Show("A connection to the database is required in order for the application to function!\r\nPlease enter valid connection string(s) in the next window", "Error", MessageBoxButtons.OKCancel);
if (result.ToString() == "OK")
{
using (ConnectionStrings box = new ConnectionStrings())
{
box.ShowDialog(this);
}
}
else
{
Application.Exit();
}
}
// more code
如果单击“取消”按钮,我希望应用程序关闭,但是" While"循环继续,MessageBox再次显示。
我意识到我可以创建一个" if"在此之后发表声明"而#34;从那里循环并关闭,但我更喜欢从对话框结果中处理它。
答案 0 :(得分:1)
使用Environment.Exit(0)代替Application.Exit
https://msdn.microsoft.com/en-us/library/system.environment.exit(v=vs.110).aspx