键提示在功能区中不起作用Microsoft
本文关键字:不起作用 Microsoft 功能区 提示 | 更新日期: 2023-09-27 18:35:10
"KeyTip"无法使用功能区控件库 (3.5.41019.1) 正常工作。我创建了一个简单的功能区窗口:
- 添加几个选项卡
- 添加一些控件,如按钮
- 设置标签和标题等属性
- 在选项卡上设置快捷键提示属性
我在设计模式(VS2010)下测试了键盘提示,一切按预期工作。但是,当我将项目构建为 Windows 应用程序时,会发生以下情况:
- ALT+快捷键提示仅显示快捷键提示,焦点没有更改。预期的行为将是选项卡的更改...
我尝试创建一个干净的 WpfRibbonProject 并做了同样的事情,然后由于某种原因它起作用了。无工作项目是窗体和 WPF 的混合,窗体显示在 WPF 窗口之前。这可能是问题所在吗?我不明白为什么这会是一个问题?
源代码:
<ribbon:RibbonTab x:Name="HomeTab"
Header="Home" KeyTip="H">
<ribbon:RibbonGroup x:Name="Group1"
Header="Group1">
<ribbon:RibbonButton Label="Hej" KeyTip="T" />
</ribbon:RibbonGroup>
</ribbon:RibbonTab>
<ribbon:RibbonTab Header="Tab1">
<ribbon:RibbonGroup Header="Min grupp">
<ribbon:RibbonButton Label="Test" />
<ribbon:RibbonSplitButton Label="Testen">
<ribbon:RibbonMenuItem Header="Jaha" />
</ribbon:RibbonSplitButton>
</ribbon:RibbonGroup>
</ribbon:RibbonTab>
<ribbon:RibbonTab Header="Tab2" KeyTip="2" />
<ribbon:RibbonTab Header="Tab3" KeyTip="3" />
</ribbon:Ribbon>
在显示 WPF 窗口之前,我设法通过添加以下代码行来解决此问题:
System.Windows.Forms.Integration.ElementHost.EnableModelessKeyboardInterop(this);
如果在同一项目中混合使用 WinForms 和 WPF 窗口,则至少如果 WinForm 显示在 WPF 窗口之前,这是必需的。
在功能
区中添加属性:键盘导航.控件选项卡导航
<ribbon:Ribbon DockPanel.Dock="Top" SelectedIndex="1" KeyboardNavigation.ControlTabNavigation="Contained">
它对我有用。