当获得焦点时,尝试在对话框中选择文本
本文关键字:对话框 选择 文本 焦点 | 更新日期: 2023-09-27 18:01:23
我试图在对话框中选择整个文本,但是我不能这样做。
我有一个类Participant
,它具有属性Firstname
。当我在对话框中设置参与者时,我调用了Focus-Method。然而,当对话框打开时,它只在焦点中,但没有被选中。
This is my Focus-Method:
public void FocusSurname()
{
SurnameBox.SelectAll();
SurnameBox.Focus();
Keyboard.Focus(SurnameBox);
}
在对话框中,我设置我的参与者如下:
Participant Participant
{
get { return _participant; }
set
{
_participant = value;
FocusSurname();
}
}
我的对话框开源代码差不多是:
public void ShowDialog(object owner)
{
Owner = owner as Window;
ShowDialog();
}
为什么文本没有被选中?(
即使我在ShowDialog-Method中调用FocursSurname,也没有任何变化。
您想要完成的是查看相关代码(在我看来)。mvvm指南或模式使用(或至少我对它的理解)表明,您希望为此使用行为或附加属性。意味着将xaml功能扩展到插件视图相关行为…
我发现了一个与你的主题相关的stackoverflow问题。看看这是否有帮助……或者试着从那个解中推导…
链接:初始焦点和选择所有行为
HTH
将以下事件处理程序方法绑定到文本框的GotFocus事件
private static void SelectText(object sender, RoutedEventArgs e)
{
var textBox = e.OriginalSource as TextBox;
Keyboard.Focus(textBox);
textBox.SelectAll();
}