【问题标题】:UWP - Pivot IsTabStop not working as expectedUWP - Pivot IsTabStop 未按预期工作
【发布时间】:2018-11-01 05:26:25
【问题描述】:

当用户点击 Tab 键时,我试图避免获得焦点。我立即尝试将 IsTabStop 设置为 false。然而,这并不能阻止用户进入枢轴。因此,我尝试在两个按钮上测试 IsTabStop,其行为正是我对枢轴的预期。

这是我的 xaml:

<Pivot IsTabStop="False">
    <PivotItem Header="Test">
        <StackPanel Spacing="10">
            <Button Content="Button 1" IsTabStop="True"/>
            <Button Content="Button 2" IsTabStop="False"/>
        </StackPanel>
    </PivotItem>
</Pivot>

我在这里遗漏了什么还是有办法解决这个问题?

【问题讨论】:

  • 如果将数据透视表中的所有控件都设置为 false 会怎样。否则尝试设置选项卡索引/顺序或使用您自己的手动焦点设置完全覆盖选项卡。
  • 我尝试在内部的所有控件以及枢轴项上将制表位设置为 false,没有任何变化。我也尝试将枢轴上的标签索引设置为-1,仍然没有变化。

标签: xaml uwp uwp-xaml


【解决方案1】:

将选项卡索引设置为 -1 仅使其成为第一个,尝试类似 1001.. 在这里他们解释了您可能遇到的问题,但是对于 RichTextBlock,有各种属性可供设置..https://docs.microsoft.com/en-us/windows/uwp/design/accessibility/keyboard-accessibility

【讨论】:

  • 感谢您的回答。但是,根据文档,我相信这只会把它放在标签索引顺序的最后。
  • 如果你想使用 hack,你可以在最后一个控件处于焦点时将其索引设置为 1,并在第一个控件处于焦点时将其设置为 1001..
【解决方案2】:

所以我最终做的是覆盖枢轴上的默认样式。我将样式中的“HeaderClipper”更改为 IsTabStop="False",这解决了我的问题。

默认枢轴样式的文档可以在https://msdn.microsoft.com/en-us/library/windows/apps/mt299144.aspx找到

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-25
    • 2021-06-04
    • 2022-01-24
    • 2015-05-11
    • 2020-05-15
    • 2014-10-31
    • 2018-02-12
    • 2014-01-20
    相关资源
    最近更新 更多