Вызов метода WinForms Control.Refresh описан в MSDN как:
Заставляет элемент управления аннулировать свою клиентскую область и немедленно перерисовать себя и любые дочерние элементы управления.
Я отлаживаю прерывистую проблему, которая, по-видимому, возникает, когда подключенный дисплей переключает сигналы опроса (эффективно меняя разрешение), в которых, как представляется, Control.Refresh не генерирует ожидаемый вызов Control.OnPaint. Я использую приложение для получения дополнительной информации, однако мне любопытно, может ли это на самом деле быть средой выполнения, не позволяющей ссылаться на OnPaint, потому что она обнаруживает, что дисплей на мгновение погас.
Мне это кажется маловероятным, и я ожидаю, что найду еще какое-нибудь другое дымящееся оружие, но я отправляю на внеслужебный случай, что кто-то еще видел это в дикой природе и имеет некоторые рекомендации по его обработке.
Нет, это не гарантировано. Если элемент управления не имеет экрана для рисования, он не загорается красным сообщением.
Но как только элемент управления снова появится на экране, сообщение краски должно снова выстрелить.
Вы пытаетесь нарисовать отладочную информацию? Если элемент управления отсутствует на экране, что вы ожидаете, когда вы вызываете обновление?