ReactiveUI How to use WhenAnyObservable properly

后端 未结 2 467
耶瑟儿~
耶瑟儿~ 2021-01-12 14:16

I am attempting to use WhenAnyObservable for the first time.

When a ReactiveList Count == 0 and a tipText length is > 0 then I want to set a local value to true in

相关标签:
2条回答
  • 2021-01-12 14:59

    I get an index error when trying to use WhenAnyObservable. I ended up using

    Observable.CombineLatest(
        SomeItems.Changed.Select(x => true),
        this.WhenAnyValue(y => y.SomeBoolProperty),
        (b,g) => b && g)
    
    0 讨论(0)
  • 2021-01-12 15:21

    You've got the right idea, but WhenAnyObservable doesn't return items until it has an initial item for both "sides" if you use >1 Observables. So you probably want:

    this.ViewModel.WhenAnyObservable(
        x => x.AutoCompleteItems.CountChanged.StartWith(0),
        x => x.WhenAnyValue(y => y.TipText),
        (countChanged, tipText) => countChanged == 0 && tipText.Length > 0);
    
    0 讨论(0)
提交回复
热议问题