【问题标题】:WPF Microsoft Ribbon popup doesn't collapseWPF Microsoft 功能区弹出窗口不会折叠
【发布时间】:2015-09-01 15:53:01
【问题描述】:

我有一个带有打开弹出窗口的菜单的功能区,如下所示:

在单击显示像图片一样的弹出窗口的按钮之前,会触发一些逻辑(与如何更改无关)来更改功能区中的活动选项卡。这有时会导致上一个选项卡中的弹出窗口仍然可见,但在其后面可以看到一个新选项卡。当我 mouseEnter 弹出窗口时,我得到一个 StackOverFlowException。

我正在考虑“停用”前一个标签左右,有人知道我做错了什么吗?

【问题讨论】:

    标签: wpf popupwindow windows-ribbon-framework


    【解决方案1】:

    我添加了以下内容来实现我想要的:) 此解决方案是特定于实现的(即基于我对我们使用的功能区的实现的调查)。该实现需要一个不同的 originalSource,我通过将 Source 设置为 RibbonWindow 实例来实现。

    private void DismissRibbonPopup()
    {
      // Hack inspired by RibbonHelper; try to close any open RibbonPopups (implicit "from the current ActiveTab").
      UIElement source = Mouse.Captured as UIElement;
      if (source != null)
        source.RaiseEvent(new RibbonDismissPopupEventArgs() { Source = /** I put the RibbonWindow instance here */ });
    }
    

    在我的代码中,我调用了这个方法,然后我将新标签设置为IsSelected = true; 这个实现与我在 impl 中遇到的略有不同。因为它几乎没有多余的代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-07-15
      • 2011-10-20
      • 2011-04-08
      • 1970-01-01
      • 2019-03-17
      • 1970-01-01
      • 2012-09-12
      相关资源
      最近更新 更多