相关疑难解决方法(0)

如果在WPF 4.0中使用启动画面,带有异常详细信息的MessageBox会立即消失

我的基于桌面的WPF应用程序(4.0)与DB一起使用,为此,它应该在应用程序的启动时与SQL Server建立连接.当然,这个操作需要一些时间,用户必须等待几秒钟(3-5),同时.Net Framework启动并连接到SQL Server.

在这种情况下,我决定使用闪屏.我在解决方案中添加了一些图片,将构建操作设置为"启动画面",编译了我的应用程序,它的工作原理!如果连接到SQL Server的尝试失败(例如服务器不可用),我的应用程序会抛出异常并向用户显示MessageBox警告和异常详细信息,用户按OK和应用程序关闭(Application.Current.Shutdown()).

在我添加启动画面之前,所有这些逻辑用于完美地工作,但是现在,添加了启动画面,如果我在SQL Server不可用时运行应用程序,应用程序会抛出异常(正如我在我的代码中提到的那样),但是MessageBox出现了通知1-2秒并且在没有任何用户交互的情况下消失,用户甚至无法读取其上写的内容.

我发现,如果我尝试显示2 MessagBoxes,那么第一个将立即出现并消失,但第二个将保持到用户将按OK.

我的问题是:如何解决这个问题?我想使用启动画面并MessageBox在抛出异常时显示一个并让用户决定何时关闭它(用户单击"确定"按钮).

这是一个描述我的应用程序逻辑的流程图:

没有例外(好的场景):运行应用程序→启动画面if(isConnectedToSQL=true)→→显示主窗口...

有异常(错误情况):运行应用程序→启动屏幕→→ if(isConnectedToSQL=false)抛出异常→显示带有异常详细信息的消息框→用户单击确定→关闭应用程序.

.net c# wpf splash-screen

9
推荐指数
1
解决办法
4888
查看次数

标签 统计

.net ×1

c# ×1

splash-screen ×1

wpf ×1