【问题标题】:Backstage Button doesn't close BackstageBackstage 按钮无法关闭 Backstage
【发布时间】:2012-02-10 08:17:11
【问题描述】:

在 Office 2010 中,当按下 Backstage 按钮时,Backstage 将自动关闭。例如,我有一个带有新建、打开和保存按钮的后台。

当我单击一个按钮时,Backstage 没有被关闭 - 我想这不是正确的行为。如何让 Fluent-Ribbon 正确处理 Backstage?

我正在使用 2010 年 11 月的当前版本 2.0 (http://fluent.codeplex.com/releases/view/55556)。

【问题讨论】:

    标签: wpf fluent-ribbon


    【解决方案1】:

    这似乎是功能区的一个缺陷,在声音控制的最新版本中已修复,但在最新发布的版本中尚未修复。

    现在您可以使用以下方法解决此问题

    // During initialisation
    myRibbon.Menu.AddHandler(PopupService.DismissPopupEvent, (DismissPopupEventHandler)OnPopupDismiss);
    
    private void OnPopupDismiss(object sender, DismissPopupEventArgs e)
    {
        var backstage = Menu as Backstage;
        if (backstage != null)
        {
            backstage.IsOpen = false;
        }
    }
    

    【讨论】:

    • 是否有发布新版本的计划?我不想自己编译源代码。
    • @nyn3x 我不知道(我不隶属于该项目),但是您无需修改​​ Fluent 源代码即可应用此修复 - 只需将其应用到您的功能区实例(myRibbon 是您的功能区实例)
    【解决方案2】:

    在 Ribbon.xml 中,所需的属性是 isDefinitive=""true"" 不确定 Fluent-Ribbon 是如何处理的,但应该具有等价的

    【讨论】:

    • 嗯,Fluent:Button也有一个IsDefinitive属性;但将其设置为 true 似乎没有任何效果。
    猜你喜欢
    • 2022-10-25
    • 2022-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多