DispatcherUnhandledException вызывается только потоком пользовательского интерфейса и только если возникла исключительная ситуация во время выполнения события.Существует некоторая традиция обрабатывать подобные исключения специально, в Windows Forms она есть и с Application.ThreadException (с плохим именем, никак не связан с потоками).
Причина в том, что существует незначительный шансобработайте исключение и сохраните программу живой, так как обработчики событий пользовательского интерфейса не всегда изменяют состояние программы слишком резко.Это требует больших порций желаемого мышления.Windows Forms доводит это до крайности, отображает ThreadExceptionDialog, который имеет кнопку «Продолжить», позволяя пользователю игнорировать исключение.WPF этого не делает, вам придется написать такой диалог самостоятельно.Вот почему событие присутствует.
Действие DispatcherUnhandledException по умолчанию - не перехватывать исключение.Так что вы можете игнорировать это, AppDomain.UnhandledException сработает следующим.