代码之家  ›  专栏  ›  技术社区  ›  NinjaCross

如何强制始终启用RibbonButton?

  •  1
  • NinjaCross  · 技术社区  · 15 年前

    我在一个窗口中有一个Microsoft Ribbonbar,每个RibbonButton都与一个特定的命令相关联,如下所示:

    <ribbon:Ribbon x:Key="MyToolbar"  Name="MyToolbar"  >         
    <ribbon:RibbonTab Header="File" >
    <ribbon:RibbonGroup Header="File"  >
    <ribbon:RibbonButton Command="{x:Static ApplicationCommands.New}"  LargeImageSource="Images/GenericDocument.png" Label="Nuovo" />
    <ribbon:RibbonButton Command="{x:Static ApplicationCommands.Open}" SmallImageSource="Images/OpenFolder.png" Label="Apri"  />
    </ribbon:RibbonGroup>
    </ribbon:RibbonTab>
    </ribbon:Ribbon>
    

    在同一窗口中放置的特定画布对象的代码后面 :

    private void BindApplicationCommands()
    {
    // FILE group
    this.CommandBindings.Add(new CommandBinding(ApplicationCommands.New, New_Executed));
    this.CommandBindings.Add(new CommandBinding(ApplicationCommands.Open, Open_Executed,Open_Enabled));
    }
    

    当我点击 外部 残疾人 . 特定按钮 (类似于“New”和“Open”命令)是 ,尽管我点击了。 我怎样才能做到这一点?

    1 回复  |  直到 15 年前
        1
  •  1
  •   NinjaCross    15 年前

    好吧,我自己解决了问题。 由于CommandBindings是在Canvas组件中定义的,因此它们无法管理到更广泛(全局)的上下文中,所以我将它们移到后面的窗口代码中,以更灵活的方式委托它们的执行/激活。