为什么我的 XAML 不遵循我指定的 TabOrder?
我目前有:
<DockPanel>
<Grid DockPanel.Dock="Top">
<UserControl TabIndex="0">
<StackPanel Orientation="Horizontal">
<ComboBox />
<TextBox Text="Search Text" />
<Button Content="Search" />
</StackPanel>
</UserControl>
<ComboBox TabIndex="1" />
<Separator />
<TextBox TabIndex="3" Text="Save" />
<TextBox TabIndex="4" Text="Cancel" />
</Grid>
<Grid>
<ContentControl TabIndex="2" />
<Popup />
</Grid>
</DockPanel>
我的 TabOrder 应该去
- 搜索组合框
- 搜索文本
- 搜索按钮
- 数据库组合框
- 内容控制
- 保存按钮
- 取消按钮
但相反,它去了
- 搜索组合框
- 搜索文本
- 搜索按钮
- 内容控制
- 数据库组合框
- 保存按钮
- 取消按钮
我的 TabOrder 有什么问题?
编辑
我发现这个 SO answer建议制作UserControl.IsTabStop="False"
并将它的 Child 控件的 TabIndex 绑定到UserControl.TabIndex
,这部分有效。
我的 TabOrder 现在是
- 搜索组合框
- 搜索文本
- 搜索按钮
- 数据库组合框
- 保存按钮
- 取消按钮
- 内容控制