我正在尝试为我的 WPF 应用程序中的所有 TextBoxes 实现 SelectAll(文本)功能。我在这里找到了如何做到这一点。但是,我表单上的第一个 TextBox 不会自动聚焦。我尝试在 Window_Loaded 事件处理程序中通过简单地使用firstTextBox.Focus
. 这行得通,但是这个 TextBox 的 Text 属性是通过绑定设置的,而且这似乎发生在Window_Loaded 事件之后。因此,我最终得到了第一个文本框,该文本框最初聚焦,但没有选择其文本。看来我需要连接到不同的事件。哪一个?
问问题
392 次
2 回答
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>
于 2012-01-05T17:40:00.260 回答
1
为什么不试试 DataContextChangedEvent。在 WPF 中,集中注意力始终是一件痛苦的事情……我们必须为它传递文件背后的代码……
于 2012-01-06T16:53:04.850 回答