У меня есть 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>
Я обрабатываю команды таким образом в коде определенного объекта Canvas, размещенного в том же окне :
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));
}
Когда я нажимаю за пределами компонента Canvas, в котором размещен код обработки, все кнопки внутри ленты становятся отключенными .
Это нежелательное поведение, так как я хочу, чтобы некоторые определенные кнопки (например, команды "New" и "Open") были всегда и глобально включены , несмотря на то, где я нажимаю.
Как мне этого добиться?
Заранее спасибо за любые предложения.