Дочерние элементы VB.NET MDI фокусируются только на строке заголовка.

Можно представить, что щелчок в любом месте дочерней формы MDI (или любого элемента управления) сфокусирует эту форму. Но в моем приложении я могу сфокусировать дочерний элемент MDI, только щелкнув его заголовок, что является ненормальным поведением со стороны пользователя. Мои формы заполнены элементами управления или панелями, поэтому я не могу позволить себе роскошь просто «щелкнуть по форме». Но щелчок в любом месте должен сфокусировать его.

Мне не удалось найти решение этой проблемы, хотя, похоже, у других тоже есть.


person Theveloper    schedule 17.12.2011    source источник


Ответы (1)


Я понял. Если вы устанавливаете свойство дочерней формы mdiParent после вызова Form.Show, это нарушает фокус всех дочерних форм.

Когда я сначала устанавливаю свойство mdiParent формы, а затем вызываю .Show(), все работает идеально, как ожидалось.

person Alex    schedule 05.01.2012
comment
В моем случае я был вынужден сделать это, потому что я создал детей mdi программно ... Я не нашел другого способа обойти это. - person Theveloper; 06.01.2012