覆盖XAML ListBox的选项卡导航

时间:2015-01-05 19:43:24

标签: wpf xaml

我想要一个可选择的项目列表,所以我自然选择了ListBox。但是标签/箭头行为不是我想要的。我需要ItemsControl的选项卡行为而没有箭头键功能。所以,如果我有三个UIElements,如:

  • 按钮a
  • 列表框
  • ButtonB

然后标签顺序为:

ButtonA,ListBoxItem1,... ListBoxItemN,ButtonB,ButtonA,....

不幸的是,默认的ListBox选项卡导航会生成Tab键顺序:

ButtonA,ListBoxSelectedItem,ButtonB,ButtonA,....

如果我使用ItemsControl,那么一切都很好,但ItemsControl没有选择的项目逻辑。

1 个答案:

答案 0 :(得分:1)

KeyboardNavigation.TabNavigation中的ListBox设置为"Continue"应该这样做:

 <StackPanel>
        <Button Content="ButtonA"/>
        <ListBox KeyboardNavigation.TabNavigation="Continue">
            <ListBoxItem Content="One"/>
            <ListBoxItem Content="Two"/>
            <ListBoxItem Content="Three"/>
            <ListBoxItem Content="Four"/>
        </ListBox>
        <Button Content="ButtonB"/>
    </StackPanel>