Как я могу установить изначально сфокусированный элемент, не активируя окно (WPF)? - PullRequest
2 голосов
/ 10 сентября 2010

Моя программа создает окно с ShowActivated=false, чтобы оно не крало фокус клавиатуры при открытии (окно создается в ответ на события, приходящие по сети).Я хочу иметь возможность указать, что конкретное поле TextBox получает фокус, когда пользователь переключается на окно.Однако кажущиеся очевидными методы (использование FocusManager.FocusedElement в разметке окна или вызов this.textbox.Focus() при отображении окна) имеют побочный эффект активации окна.

В итоге я добавил обработчик события длясобытие Activated окна, которое (a) выполняет требуемый вызов Focus() и (b) удаляет себя из события Activated, так что это происходит только один раз.Это кажется грубым.Я что-то упустил?

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