好吧我有一个ListView有2个GridViewColumns,一个显示一个数字,一个包含一个TextBox我的问题是我希望能够通过GridViewColumn中的所有TextBox来Tab.随着附加的Property KeyboardNavigation.TabNavigation我几乎实现了我想要的.
我实现的是:
第一个TAB - 整个第一个ListViewItem聚焦
第二个TAB - 第一个TextBox聚焦
第三个TAB - 整个第二个ListViewItem聚焦
第四个TAB - 第二个TextBox聚焦
我想要的是
第一个TAB - 第一个TextBox聚焦
第二个TAB - 第二个TextBox聚焦
<ListView KeyboardNavigation.TabNavigation="Continue" Name="TheLabelListView" >
<ListView.ItemContainerStyle >
<EventSetter Event="Selected" Handler="ItemSelected" /></Style>
</ListView.ItemContainerStyle>
<ListView.View>
<GridView x:Name="GridViewSmall" >
<GridViewColumn Header="#" Width="20" DisplayMemberBinding="{Binding SelectorIndexNumber}" />
<GridViewColumn Header="Selector" Width="175">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBox Name="SelectorTextBox" Text="{Binding SelectorName}" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
Run Code Online (Sandbox Code Playgroud)
这段代码由HB提供给我.它应该在选择ListViewÍtem时执行,并找到TextBox并将其聚焦.不知何故,当执行此方法时,它仍然不会每次都选择TextBox bool TextBoxgotFocus始终为true.
private void ItemSelected(object sender, RoutedEventArgs e)
{
var item = sender as ListViewItem;
TextBox h = (FindNamedChild(item, "SelectorTextBox") …Run Code Online (Sandbox Code Playgroud)