public MainWindowModel() { ServerResult = "Haven't talked to the server yet..."; var firstAndLastFilled = this.WhenAnyValue(vm => vm.FirstName, vm => vm.LastName, (f, l) => !string.IsNullOrWhiteSpace(f) && !string.IsNullOrWhiteSpace(l)); ChangeName = ReactiveCommand.CreateAsyncTask(firstAndLastFilled, _ => PretendToCallTheServer()); ChangeName.Subscribe(r => ServerResult = r); }
public PersonViewModel() { _fullName = this.WhenAnyValue(vm => vm.FirstName, vm => vm.LastName, (f, l) => string.Format("{0} {1}", f, l)) .ToProperty(this, vm => vm.FullName); var firstAndLastFilled = this.WhenAnyValue(vm => vm.FirstName, vm => vm.LastName, (f, l) => !string.IsNullOrWhiteSpace(f) && !string.IsNullOrWhiteSpace(l)); ChangeName = ReactiveCommand.CreateAsyncTask(firstAndLastFilled, _ => PretendToCallTheServer()); ChangeName.Subscribe(r => ServerResult = r); }