Я создаю приложение, которое имеет RichTextBox
, в котором есть текст разных цветов в зависимости от того, что представляет информация (красный для ошибок, черный для стандартных сообщений и т. Д.). Я пытаюсь поддерживать темы Windows и возможные различия системных цветов. Для этого я создал метод изменения цветов текста по умолчанию на основе системного цвета Window
, в результате чего каждый цвет становится светлее или темнее, чтобы он хорошо контрастировал.
Однако во время тестирования этой системы я обнаружил, что если я изменяю тему во время работы программы, она молча завершается, без каких-либо объяснений или даже исключений. Это просто выходит. Я попытался установить точку останова после вызова Application.Run
, и Windows зависла на экране «Пожалуйста, подождите ...», который выдает проводник, пока он изменяет тему. Через минуту экран исчез, и, конечно же, точка останова была достигнута, что означает, что он не убивает процесс напрямую.
Мой вопрос: , почему он это делает, и есть ли способ, которым я могу помешать ему это сделать?
Спасибо.