2

使用 RibbonControlsLibrary (3.5.41019.1) 时,“KeyTip”无法正常工作。我创建了一个简单的 RibbonWindow:

  1. 添加几个选项卡
  2. 添加一些控件,例如按钮
  3. 设置标签和标题等属性
  4. 在选项卡上设置KeyTip属性

我在设计模式(VS2010)下测试了 KeyTip ,一切都按预期工作。但是当我将项目构建为 Windows 应用程序时,会发生以下情况:

  • ALT+KeyTip只显示键提示,没有焦点改变。预期的行为将是选项卡的更改...

我试图创建一个干净的 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>
4

2 回答 2

1

在显示 WPF 窗口之前,我设法通过添加以下代码行来解决问题:

System.Windows.Forms.Integration.ElementHost.EnableModelessKeyboardInterop(this);

如果您在同一个项目中混合 WinForms 和 WPF 窗口,至少如果 WinForm 显示在 WPF 窗口之前,这是必要的。

于 2012-05-25T06:22:15.997 回答
0

在 Ribbon cotrol 添加属性:KeyboardNavigation.ControlTabNavigation

 <ribbon:Ribbon DockPanel.Dock="Top" SelectedIndex="1" KeyboardNavigation.ControlTabNavigation="Contained">

它对我有用。

于 2012-05-24T20:00:49.260 回答