所以我遇到了一篇关于WPF异常处理的有趣文章: http://srtsolutions.com/public/item/251263
它通过在xaml< application>中声明DispatcherUnhandledException处理程序来工作。节点。
但如果从win表单应用程序启动WPF窗口会怎么样?
我在哪里可以声明一般的异常处理程序?
问题是当WPF崩溃时,它会带来整个WinForms应用程序。
*编辑 如果不是直接启动WPF窗口,我启动了一个“应用程序”,而不是定义一个启动窗口?可行/可行吗?
答案 0 :(得分:2)
将处理程序附加到<obj>.Dispatcher.UnhandledException
事件,其中<obj>
是任何WPF控件,或者是在同一个线程上创建的另一个DispatcherObject
。
答案 1 :(得分:0)
我相信Windows Forms的传统“全局”异常处理程序将适用于此:
将线程异常挂钩为Main中的第一行:
Application.ThreadException += new ThreadExceptionEventHandler(new ThreadExceptionHandler().ApplicationThreadException);