Мы используем Dispatcher для перехвата любых необработанных исключений в нашем приложении WPF. Это определено в нашем файле app.xaml.cs и работает очень хорошо. Однако у нас есть ситуация, когда мы хотим обнаружить и перехватить любые необработанные исключения, которые происходят в конкретном пользовательском элементе управления WPF. Мы хотели бы иметь возможность перехватывать любые необработанные ошибки, связанные с этим элементом управления, до того, как они будут получены и обработаны обработчиком на уровне приложения. Когда мы пытаемся настроить обработчик для диспетчера управления пользователями, необработанная ошибка всегда, кажется, обрабатывается сначала на уровне приложения, а затем на уровне управления пользователем. Даже если мы поместим Handled = True в оба обработчика. Рабочие потоки не используются.
Мы знаем, что можем войти в пользовательский элемент управления и весь код, который он вызывает и настроить, try {} catch {} и генерировать пользовательские исключения, но мы надеялись на более простое решение под ключ.
Есть идеи?
Надеюсь, этот вопрос имеет смысл ..