Почему моя форма иногда исчезает при закрытии диалога? - PullRequest
1 голос
/ 09 августа 2010

Иногда, на первый взгляд, случайным образом, когда я закрываю диалоговую форму, моя основная форма, кажется, перемещается назад в порядке окна, исчезая позади следующего приложения назад (обычно Visual Studio).Он сохраняет фокус, поэтому нажатие на панель задач минимизирует его, требуя еще один щелчок.Всякий раз, когда это происходит, кажется, что цвета элемента управления также немного меняются, но меняются, если я разверну и восстановлю окно.

Есть идеи, почему это происходит?

Редактировать: Это происходит, когда яm отладка;это может произойти и во время выполнения, но я обычно ничего не имею за приложением, поэтому я не заметил.Никто не упомянул об этом.

1 Ответ

1 голос
/ 09 августа 2010

Это произойдет, когда диалоговое окно закроется, и Windows не сможет найти любое окно в вашем приложении, которое не отключено.Вынужденный переместить фокус куда-нибудь , он выберет окно другого приложения, чтобы сфокусировать его.Ваша форма исчезнет за ней.

Точно, почему ваша основная форма отключена, когда это происходит, неясно.Изменение цвета определенно предполагает, что вы меняете свойство Enabled формы.Все становится серым, когда ты это делаешь.Установка значения Enabled обратно в true после закрытия диалога не работает, слишком поздно.Только не повозитесь с Enabled, метод ShowDialog () уже отключает другие окна.

...