【问题标题】:Selected RadioButton receives tab out of order选定的 RadioButton 接收标签乱序
【发布时间】:2011-11-13 09:17:01
【问题描述】:

我有一个自定义控件:一个定义一组 ListItemBox 的 Listbox,每个 ListItemBox 都包含一个 RadioButton。

我没有为每个单独设置 TabIndex,因为该列表正在动态读取并填充控件的 ItemsSource。相反,我在 ListBox 本身上设置了 KeyboardNavigation="Local"。

这很好用(我正在浏览我的表单,点击列表框,按顺序浏览其中的每个项目 - 然后继续浏览我的表单的其余部分),直到我选择一个单选按钮。

选择单选按钮后,当我尝试再次开始通过列表框切换时,第一个选项卡将我发送到所选项目,跳过列表中该项目之前出现的所有项目。

有没有办法阻止这种不良行为的发生(最好是在 XAML 中,而不是在代码后面)?

【问题讨论】:

    标签: c# wpf radio-button tab-ordering


    【解决方案1】:

    这是 ListBox 选项卡的正常行为。一旦 ListBox 的第一项获得焦点,您可以使用向上向下箭头键导航到其他项。

    如果你想改变标签的行为,here 是对 ListBox 中的 TextBoxes 所做的事情。希望您可以更新并将这种方式用于 RadioButtons。

    【讨论】:

    • 感谢您的建议,但是,我仍然无法使其按预期运行。我最终完全放弃了列表框,只使用了普通的旧单选按钮。
    【解决方案2】:

    我最终从列表框中删除了按钮。使用列表框是从旧问题中遗留下来的,即单选按钮上的绑定丢失,但我的测试表明这已在 4.0.0 中得到修复。一旦单选按钮不再在列表框中,选项卡行为就会如愿以偿。

    【讨论】:

      猜你喜欢
      • 2019-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-17
      • 2016-12-16
      • 1970-01-01
      相关资源
      最近更新 更多