我正在嘗試ObservableForProperty用於多個Reactive Observable Sequences。 這是代碼。ObservableForProperty for multiple Reactive Observable Sequence
using ReactiveUI;
public ReactiveUIDerivedClass<T> FName {get; private set;}
public ReactiveUIDerivedClass<T> MName {get; private set;}
public ReactiveUIDerivedClass<T> LName {get; private set;}
FName = new ReactiveUIDerivedClass<T>();
MName = new ReactiveUIDerivedClass<T>();
LName = new ReactiveUIDerivedClass<T>();
這裏T被System.String。 所以,下面的方法工作。
private void ObserveForPropertyInThreeFields()
{
Observable.CombineLatest(FName.ObservableForProperty(p => p.Value),
MName.ObservableForProperty(p => p.Value),
LName.ObservableForProperty(p => p.Value))
.Where(p => p.All(v => !string.IsNullOrWhiteSpace(v.Value)))
.Subscribe(p => { /* do some stuff */ });
}
現在,我要達到同樣的效果,其中T爲性質有三種不同類型的。當我使用Observable.CombineLatest時,出現以下錯誤消息。
用於方法的類型參數 'System.Reactive.Linq.Observable.CombineLatest (System.IObservable,System.IObservable, System.Func)' 不能從使用推斷。 嘗試明確指定類型參數。
任何想法我如何ObserveForProperty更改爲不同類型的三個屬性?
謝謝!這工作:) – Butters