c# - WPF自定义错误处理对话框?

标签 c# wpf exception error-handling

我正在尝试设置我的 WPF 应用程序,以便在未处理异常时弹出错误对话框。在良好的 WinForms 中,这可以通过添加

Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);

到您的 Program.cs 文件,然后在事件处理代码中显示您想要的任何对话框。在 WPF 中,我尝试使用

app.Dispatcher.UnhandledException += new System.Windows.Threading.DispatcherUnhandledExceptionEventHandler(Dispatcher_UnhandledException);

但是,当我在我的错误处理自定义窗口上使用 Show() 时,应用程序立即转到“blahblah.exe 已停止工作...”并关闭。如果我使用 ShowDialog(),窗口在关闭之前一直可用,然后弹出相同的“...已停止工作...”对话框并消失。

在 WinForms 中,似乎关闭任何错误对话框都会允许应用程序继续运行,具体取决于异常的严重程度。我似乎无法弄清楚如何在 WPF 中正确执行此操作。

有什么想法吗?

最佳答案

您需要在 EventArgs 中将 Handled 设置为 true。

关于c# - WPF自定义错误处理对话框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/791270/

相关文章:

C++ : handle resources if constructors may throw exceptions (Reference to FAQ 17. 4]

c# - EqualityComparer <Type> GetHashCode和等于

c# - ASP.NET MVC 以分发包的形式部署

c# - 如何在不弄乱 DataContext 的情况下为 WPF 工具提示设置 PlacementTarget?

c# - 在文本框按下按键时执行逻辑

c# - 使用浏览器功能时 WPF 应用程序中的脚本错误

java - Java中如何限制Hangman的猜测次数

c# - 将项目绑定(bind)到列表框

c# - 在抽象类中使用泛型

c# - MySQL 查询中的输入字符串格式不正确