我正在尝试为我的WPF应用程序中的所有TextBox实现SelectAll(文本)功能。我找到了如何做到这一点here。但是,我的表单上的第一个TextBox不会自动聚焦。我尝试通过简单地使用firstTextBox.Focus
来修复Window_Loaded事件处理程序中的问题。这是有效的,但是这个TextBox的Text属性是通过绑定设置的,似乎在 Window_Loaded事件之后发生了。所以,我最终得到了一个最初聚焦的第一个文本框,但没有选择它的文本。我似乎需要连接到另一个事件。哪一个?
答案 0 :(得分:1)
尝试在窗口的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>
答案 1 :(得分:1)
为什么不尝试DataContextChangedEvent。引入焦点始终是WPF的痛苦......我们必须在文件背后继续传递它......