Странное поведение панели задач с приложением MDI WinForm - PullRequest
2 голосов
/ 30 марта 2012

Все, я прошел половину пути через приложение MDI WinForm и начал тестировать то, что мы имеем на нескольких разных машинах, и я обнаружил следующую ошибку на всех машинах (под управлением Windows 7 / Vista).Ошибка связана с панелью задач и визуально активным состоянием приложения в ней.Это будет легче с изображениями:

A.Я нахожусь над панелью задач, готовой к запуску.

Hovering over the application icon (mouse not displayed)

B.Я нажимаю на приложение, оно запускается без проблем и отображается на панели задач - пока все хорошо.

Launches with no problem

C.Подождите, может быть, три секунды, и значок исчезнет, ​​чтобы не быть активным, поэтому, когда я нажимаю на него, он запускает другой экземпляр моего приложения вместо того, чтобы восстановить тот, который я только что открыл !?Как только я нажимаю на форму и минимизирую, а затем восстанавливаю форму, эта проблема исчезает!?

Active icon on the Task Bar dies a death

Это странно, и я понятия не имею, как ее исправить.Это также проявляется при использовании файла .exe для запуска приложения, где панель задач вообще не отображается, пока вы не нажмете главную форму приложения.Я действительно в тупик.Если у кого-нибудь есть представление о том, что здесь может происходить, это будет наиболее ценно?Спасибо за ваше время.

Примечание.Я сузил проблему до формы, запускаемой за другими открытыми формами.Я использовал подходящие опции this.TopLevel = true; в событиях форм Shown и т. Д., Но, похоже, ничего не работает ...

Ответы [ 2 ]

2 голосов
/ 16 апреля 2012

All

Это было решено добавлением

this.Activate();

в блоке finally основной формы (родительской формы MDI) Shown событие.

Спасибо за ваше время и помощь.

2 голосов
/ 30 марта 2012

Я видел аналогичную проблему, когда приложение не фокусировалось при первом запуске и не отображалось на панели задач Windows 7, пока вы не щелкнули по нему, чтобы активировать основную форму.

Мне никогда не удавалось отследить реальную причину, но перемещение настройки свойства Text формы из переопределения OnLoad в конструктор позволило устранить проблему.Очень странно, и меня все еще беспокоит, что я не знаю, почему это происходило.

Не уверен, применимо ли это к вам, но мне было бы очень интересно узнать, устанавливаете ли вы также текст внеконструктор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...