фокус не входит в целевой пользовательский контроль должным образом - PullRequest
4 голосов
/ 19 ноября 2010

У меня есть пользовательский элемент управления, состоящий из текстового поля и двух кнопок.
элемент управления помещается в диалоговое окно, и когда я открываю вкладку поверх элемента управления
, я испытываю правильное поведение - сначала фокусируется текстовое поле,
, затем одна кнопка, затем другая.
Однако, когда я устанавливаю пользовательский элемент управления в качестве цели для сочетания клавиш
, установленный с помощью "_" для метки (скажем, нажмите alt + r для "_Row count"), пользовательский элемент управления
не получаетлюбой фокус.Попытался реализовать «gotkeyboardfocus» и установить
фокус на элемент управления textbox, но он не работает.

Ответы [ 2 ]

1 голос
/ 19 ноября 2010

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

private void UserControl_GotFocus(object sender, RoutedEventArgs e)
{
    textBox.Focus();
}
0 голосов
/ 04 января 2011

Привет, я недавно столкнулся с проблемой фокуса. Я создал метод SetFocus () внутри моего пользовательского элемента управления. Затем внутри этого usercontrol я установил фокус непосредственно на свой элемент управления textbox после вызова .SetFocus () от потребителя.

public void SetFocus()
{
this.txtCommand.Focus();
}
...