ReactiveUI: как передать параметр «async» в ReactiveCommand.CreateFromTask () - PullRequest
1 голос
/ 03 июня 2019

Я определил ReactiveCommand так:

CmdGetTestResult = ReactiveCommand.CreateFromTask<bool>(async detailed =>
{
    var result = await Client.FooAsync(detailed);
});
CmdGetTestResult.ToPropertyEx(this, x => x.GetTestResultResponse);

viewmodel

public bool Detailed { get; set; }

public Unit GetTestResultResponse { [ObservableAsProperty]get; }
public ReactiveCommand<bool, Unit> CmdGetTestResult { get; }

В xaml:

<Button
    Content="get test result (F4)"
    Command="{Binding Path=ViewModel.CmdGetTestResult}"
    CommandParameter="{Binding Path=ViewModel.Detailed}"/>

Свойство detailed равно true (проверено в отладчике), но оно всегда передается как false. Что случилось с моим кодом?

EDIT:

Я также попробовал reactiveui способ:

this.BindCommand(ViewModel, model => model.CmdGetTestResult, window => window.ButtonGetTestResult, model => model.Detailed);

без успеха и с той же проблемой ..

...