0

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 は無効のままです。

ありがとうございました!

4

1 に答える 1