wpf - 使 WPF TabControl 忽略 Ctrl+Tab

标签 wpf tabcontrol keydown

我正在编写一个使用“选项卡式浏览”比喻的应用程序,其中 TabControl 为窗口的完整大小,以及选项卡内的其他内容。有时,这些选项卡本身会包含其他 TabControl。

(选项卡内的选项卡可能会令人困惑,因此我将重新设置内部 TabControl 的样式,使其看起来不像 TabControl。我可能会将其样式设置为使用顶部的 ToggleButtons 而不是选项卡。)

我希望这个 UI 的行为就像您期望的选项卡式浏览隐喻一样工作:Ctrl+Tab 应始终在外部 TabControl 上切换选项卡(即看起来像 TabControl),即使键盘焦点位于内部 TabControl 内部(它看起来不像 TabControl,因此不应期望响应 Ctrl+Tab)。但是,当然,内部 TabControl 首先获取按键事件并自行处理。

阻止内部 TabControl 响应 Ctrl+TabCtrl+Shift+Tab 键事件,因此这些事件可以向上冒泡到外部 TabControl?

最佳答案

WPF TabControl 似乎通过 OnKeyDown 方法管理键盘导航功能。我建议创建一个继承自 TabControl 的自定义控件,并重写 OnKeyDown 方法。

关于wpf - 使 WPF TabControl 忽略 Ctrl+Tab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/834548/

相关文章:

c# - 字符串被神秘地切断

c# - 基于 openstreetmap 在 map 上显示 50 万个点的速度非常慢

c# - 如何获得 child 控制权?

c# - WPF:具有多个数据模板的 TabControl

javascript - 如何禁用 jQuery 中的重复按键

javascript - 单击按钮时的 jQuery 正斜杠

javascript - jQuery 在 keydown 后等待 keyup

.net - WPF 或 Windows 窗体

wpf - 在 WPF 中向上/向下移动 ListBoxItem

TabControl 中的 WPF UI 持久性