我想用 MenuItem-Click 调用 ApplicationCommand:
<MenuItem Header="{StaticResource MenuItemSave}" Command="ApplicationCommands.Save"/>
在我的 ViewModel-Constructor 中,我初始化我的绑定:
CommandBinding saveBinding = new CommandBinding(ApplicationCommands.Save, SaveCommand_Execute, SaveCommand_CanExecute);
CommandManager.RegisterClassCommandBinding(typeof(ViewModel_Main), saveBinding);
RegisterCommandBindings.Add(saveBinding);
现在我想处理该命令,但它根本无法执行。即使它应该总是正确的。
private void SaveCommand_CanExecute(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = true;
}
private void SaveCommand_Execute(object sender, ExecutedRoutedEventArgs e)
{
//Stuff
}
我还尝试在我的 init 函数之后更新所有绑定:
CommandManager.InvalidateRequerySuggested();
但我的 MenuItem 保持禁用状态。
谢谢!