我有一个ListView,我试图禁用各个项目之间的键盘导航。我试图将KeyboardNavigation.DirectionalNavigation=“None”设置为ListView、其PanelTemplate以及各个项目。但都不起作用。
此外,键盘的方向导航也很混乱--面板是一个 Package 面板,按下箭头导航会很混乱,有时它也会在两个孩子之间循环,没有机会用箭头跳到其他孩子。这就是为什么我想禁用它,尽管纠正它会更好。
下面是相关代码:
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel Orientation="Horizontal"
Width="210"
Margin="0,12"
KeyboardNavigation.DirectionalNavigation="None" />
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.ItemTemplate>
<DataTemplate>
<Border Width="24"
Height="24"
Background="White"
BorderBrush="Black"
BorderThickness="1 1 1 1"
Margin="0"
KeyboardNavigation.IsTabStop="False"
KeyboardNavigation.DirectionalNavigation="None">
<TextBlock Text="{Binding Text}"
FontSize="20"
VerticalAlignment="Center"
HorizontalAlignment="Center"
x:Name="textBlock"
FontFamily="Verdana, Arial"/>
</Border>
</DataTemplate>
</ListView.ItemTemplate>
1条答案
按热度按时间jc3wubiy1#
只需为PreviewKeyDown事件添加一个处理程序: