焦点不能正确进入目标用户控制

时间:2010-11-19 12:44:48

标签: wpf wpf-controls focus

我有一个用户控件,包含一个文本框和两个按钮。
控件放在一个对话框上,当我选中对话框时 控制,我经历了正确的行为 - 首先是文本框的重点,
然后一个按钮,然后另一个按钮。
但是,当我将用户控件设置为键盘快捷键的目标时 使用“_”设置标签(例如按alt + r表示“_Row count”)用户控件
没有得到任何关注。尝试实施“gotkeyboardfocus”并设置
那里的焦点是文本框控件,但它不起作用。

2 个答案:

答案 0 :(得分:1)

默认情况下,UserControl无法对焦,因此您必须将其打开才能使其正常工作。

<my:UserControl1 x:Name="userControl11" Focusable="True" .../>
<Label Target="userControl11">_Row count</Label>

然后,当收到Focus

时,您可以将所需的TextBox聚焦在UserControl内部
private void UserControl_GotFocus(object sender, RoutedEventArgs e)
{
    textBox.Focus();
}

答案 1 :(得分:0)

您好我最近遇到焦点问题。我所做的是从我的用户控件中创建一个名为SetFocus()的方法。然后在usercontrol里面,我在从使用者调用.SetFocus()之后将焦点直接设置到我的文本框控件。

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