Сообщение ReactiveUI CanExecute от 01.03.2023 10:16
Изменено 22.03.2023 3:47 Разраб
ReactiveUI CanExecute
Есть предположение почему не блокируется команда? начальное состояние SelectedItem: null
РЕШЕНО!
Вообщем, трудности перевода(гоу на русский?).
Явный вызов команд не проверяет возможность. Только ui-фрэймворк так умеет.
var canExecute = this.WhenAnyValue(x => x.SelectedItem)
.Select(x => x is not null)
.ObserveOn(RxApp.MainThreadScheduler);
canExecute.Subscribe(async x => await dialogService.ShowMessageBox("Удаление.", new MarkupString($"Удалить <b>{x}</b>?")));
GetSystemList = ReactiveCommand.CreateFromTask(systemManager.GetList);
Delete = ReactiveCommand.CreateFromTask(DeleteItem, canExecute);
РЕШЕНО!
Вообщем, трудности перевода(гоу на русский?).
Явный вызов команд не проверяет возможность. Только ui-фрэймворк так умеет.
ReactiveUI CanExecute
Есть предположение почему не блокируется команда? начальное состояние SelectedItem: null
РЕШЕНО!
Вообщем, трудности перевода(гоу на русский?).
Явный вызов команд не проверяет возможность. Только ui-фрэймворк так умеет.
Поправка. InvokeCommand также учитывает canexecute.
var canExecute = this.WhenAnyValue(x => x.SelectedItem)
.Select(x => x is not null)
.ObserveOn(RxApp.MainThreadScheduler);
canExecute.Subscribe(async x => await dialogService.ShowMessageBox("Удаление.", new MarkupString($"Удалить <b>{x}</b>?")));
GetSystemList = ReactiveCommand.CreateFromTask(systemManager.GetList);
Delete = ReactiveCommand.CreateFromTask(DeleteItem, canExecute);
РЕШЕНО!
Вообщем, трудности перевода(гоу на русский?).
Явный вызов команд не проверяет возможность. Только ui-фрэймворк так умеет.
Поправка. InvokeCommand также учитывает canexecute.