Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 通过绑定设置文本后,如何将焦点设置到文本框?_Wpf_Focus_Selectall - Fatal编程技术网

Wpf 通过绑定设置文本后,如何将焦点设置到文本框?

Wpf 通过绑定设置文本后,如何将焦点设置到文本框?,wpf,focus,selectall,Wpf,Focus,Selectall,我正在尝试为WPF应用程序中的所有文本框实现SelectAll(文本)功能。我发现了如何做到这一点。但是,我表单上的第一个文本框不会自动聚焦。我试图通过使用firstTextBox.Focus在窗口加载的eventhandler中解决这个问题。这是可行的,但是这个文本框的文本属性是通过绑定设置的,看起来这是在Window_加载事件之后发生的。因此,我最终得到了第一个文本框,它最初是聚焦的,但没有选择文本。看来我需要参加一个不同的活动。哪一个?尝试在窗口的XAML中使用FocusManager:

我正在尝试为WPF应用程序中的所有文本框实现SelectAll(文本)功能。我发现了如何做到这一点。但是,我表单上的第一个文本框不会自动聚焦。我试图通过使用
firstTextBox.Focus
在窗口加载的eventhandler中解决这个问题。这是可行的,但是这个文本框的文本属性是通过绑定设置的,看起来这是在Window_加载事件之后发生的。因此,我最终得到了第一个文本框,它最初是聚焦的,但没有选择文本。看来我需要参加一个不同的活动。哪一个?

尝试在窗口的XAML中使用FocusManager:

<Window x:Class="WpfApplication1.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="MainWindow"
    FocusManager.FocusedElement="{Binding ElementName=firstTextBox}">
    <Grid>
        <TextBox Name="firstTextBox" />
    </Grid>
 </Window>


为什么不试试DataContextChangedEvent。在WPF中,聚焦始终是一件痛苦的事。。。我们必须为它传递代码隐藏文件…

运气不好,第一个文本框可以获得焦点,但它的文本是在之后分配的。您能否为绑定添加一些信息/代码,以及您是使用mvvm还是使用代码隐藏。如果没有这些信息,我会说在设置datacontext后只需设置焦点。@blindmeis:太简单了,我想不起来;-)它起作用了!把你的评论变成一个答案,我会接受的。