0

我正在创建设计应用程序,用户可以在其中将控件拖放到某个表面。工具栏中的某些控件可能包含损坏的逻辑并在注入到表面时生成异常。当它们被删除时,我想抑制来自 3rd 方控件的一些未处理的异常。

我想抑制这个 UI 异常并显示某种弹出窗口:

workArea.Dispatcher.UnhandledException += MainContainerDispatcherUnhandledException

是否可以根据来源进行处理和压制?

谢谢。

4

2 回答 2

1

您可以使用AppDomain.UnhandledException并且如果您收到它,请确定实现它的控件,并且

  • 或向用户显示用户友好的消息
  • 或显示一些红色表面(或多或少像 VS 那样)
  • 或使用带有动画的装饰器(很酷,但要编程更多)

希望这可以帮助。

于 2012-04-10T06:47:11.897 回答
1

有必要处理事件:e.Handled=true;. DispatcherUnhandledExceptionEventArgs.HandledWPF 应用程序的未处理异常处理程序

于 2012-04-10T08:41:06.440 回答