コマンドによって無効にされたボタンにスタイルを適用しようとしています。
IsEnabled状態は、canexecutechangedイベントによってトリガーされていたプロパティであると想定しましたが、そうではないようです。
どのボタンプロパティが影響を受けていますか?ボタンにスタイルを提供できるように、このイベントにフックできますか?
ビューモデルで、ボタンを有効または無効にするプロパティを追加できます。以下の例に従います。
public Command FacebookLoginCommand { get; set; }
private bool _IsBusy;
public override bool IsBusy
{
get
{
return _IsBusy;
}
set
{
_IsBusy = value;
OnPropertyChanged();
FacebookLoginCommand?.ChangeCanExecute();
GoogleLoginCommand?.ChangeCanExecute();
}
}
public LoginViewModel(IUserDialogs dialogs) : base(dialogs)
{
FacebookLoginCommand = new Command(async () =>
{
using (Dialogs.Loading("Carregando"))
{
IsBusy = true;
await Task.Run(() => new FacebookLoginService(Dialogs).Logar());
await Task.Run(() => Task.Delay(TimeSpan.FromSeconds(3)));
IsBusy = false;
}
}, CanExecute());
private Func<bool> CanExecute()
{
return new Func<bool>(() => !IsBusy);
}
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加