У меня есть UserControl определенно, что:Управления фокусировки для контроля пользовательского пользователя
UserControl
TextBox
Button (Clear)
У меня есть GotFocus
обработчика на UserControl
так, что всякий раз, когда он получает фокус, он вызывает TextBox.Focus()
. Проблема, с которой я сталкиваюсь, заключается в том, что если я нажимаю кнопку очистки, она очищает текст и затем переориентируется на текстовое поле, вызывая два события GotFocus на моем элементе управления. Я хочу, чтобы это действовать либо как:
- Один GotFocus события
- Один GotFocus события (кнопка), один LostFocus события (кнопка), один GotFocus события (текстовое поле)
Я играл с FocusManager.IsFocusScope
безрезультатно. Есть ли способ вызвать руководство LostFocus
прямо перед тем, как позвонить Textbox.Focus
?
Попробуйте установить IsFocusable на UserControl как false? –
В настоящее время я, похоже, исправил это, отметив кнопку как «Фокусное = Ложное» .... Я не уверен, что считаю это хорошим решением, поскольку все, что он делает, это сделать так, чтобы чистый щелчок кнопки не срабатывал изменение фокуса вообще –
@lll Не работает –