我正在寻找的行为是在 ListView 中选择 Item 会导致聚焦第一个可聚焦的 visualchild。
问题:ItemsControler 中的数据模板化数据没有获得初始焦点。在下面的示例中,有 4 个字符串,然后通过 Datatemplate 填充到 TextBox 中。
例子:
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Grid>
<ListView>
<ListView.Resources>
<DataTemplate DataType="{x:Type sys:String}" >
<TextBox Width="100" Text="{Binding Mode=OneWay}"/>
</DataTemplate>
</ListView.Resources>
<ListView.ItemsSource>
<x:Array Type="{x:Type sys:String}">
<sys:String>test</sys:String>
<sys:String>test</sys:String>
<sys:String>test</sys:String>
<sys:String>test</sys:String>
</x:Array>
</ListView.ItemsSource>
</ListView>
</Grid>
</Window>
我已经尝试了一些组合
FocusManager.FocusedElement="{Binding ElementName=[...]}"
无意义的说:没有成功。任何人都知道如何在不遍历 c# 中的可视化树的情况下获得我想要的东西?应该可以做到这一点,不是吗?