ビューにさまざまなボタンがある場合、コマンドの実行中にボタンのIsEnabled状態を制御するにはどうすればよいですか?
このコマンドを実行すると:
public ICommand DoSomethingCommand
{
get
{
if (doSomethingCommand == null)
{
doSomethingCommand = new RelayCommand(
(parameter) =>
{
this.IsBusy = true;
this.someService.DoSomething(
(b, m) =>
{
this.IsBusy = false;
}
);
},
(parameter) => !this.IsBusy);
}
return this.doSomethingCommand ;
}
}
OnPropertyChangedイベントを発生させるIsBusyプロパティを設定しました。他のすべてのボタンは、コマンドのCanExecuteでこのプロパティをチェックします。ただし、上記のコマンドを実行してもボタンは無効になりません。
どうすればこれを正しく行うことができますか?