Могут ли скрытые элементы управления быть сфокусированными? - PullRequest
1 голос
/ 09 февраля 2012

У меня есть несколько пользовательских элементов управления для имитации поведения, подобного ячейке, т. Е. Один элемент управления для издания и другой для отображения.В режиме редактирования один из них скрыт, а другой виден.Вне режима редактирования все наоборот.

Элемент управления для редактирования является фокусируемым, а элемент управления дисплеем - нет.

Что я действительно намерен, так это включить правильную навигацию по вкладкам.Я попытался подключить функцию к GotFocusEvent из элемента управления редактирования, чтобы принудительно активировать режим редактирования, но он не работает.

Интересно, делает ли скрытый элемент управления его также без фокуса ...

Спасибо

Ответы [ 3 ]

2 голосов
/ 09 февраля 2012

Скрытые или свернутые элементы управления не могут быть сфокусированы.Если вы хотите, чтобы они по-прежнему были фокусируемыми, вместо этого вы можете установить их непрозрачность на 0.

0 голосов
/ 09 февраля 2012

Если я правильно вас понимаю, у вас есть пользовательский элемент управления, который в фокусе должен переключаться в режим редактирования.

Что вам нужно сделать, это обработать событие фокуса на вашем пользовательском элементе управления (а не навнутренний элемент управления для редактирования).

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

0 голосов
/ 09 февраля 2012

Используйте Control.TabIndex свойство, чтобы установить порядок навигации по вкладкам.Когда элемент управления скрыт или свернут, он не рассматривается в дереве визуалов элементов управления, поэтому он не может быть сфокусирован.Если вы хотите сфокусироваться на элементе управления дисплеем, просто поместите поверх него другой прозрачный элемент управления, который может получать фокус и ничего не делать.

...