ReactiveProperty v7.5.0 のプレリリース版を NuGet に公開しました。
ReactiveProperty 7.5.0-pre202010141113
変更内容は以下のような感じです。
ObserveProperty
や ToReactivePropertyAsSynchronized
や ToReactivePropertySlimAsSynchronized
で x.Hoge.Foo
みたいにプロパティがネストしているケースもサポートしました。
例えば、以下のようなコードを書くと Person クラスの Child プロパティの Name プロパティを監視する ReadOnlyReactivePropertySlim が出来ます。
var p = new Person();
var rp = p.ObserveProperty(x => x.Child.Name)
.ToReadOnlyReactivePropertySlim();
今までは、上記のようなコードを書いても動いていませんでした。途中で Child を null に設定すると Name プロパティの型の default 値が ReactiveProperty に設定されます。
一度 Child に null を設定しても、再度 null じゃない値が設定されると、その時の Child の Name の監視が行われて ReactiveProperty に設定されます。
ToReactivePropertyAsSyncronized
や ToReactivePropertySlimAsSyncronized
は、プロパティの途中の値が null などになると、null の間に ReactiveProperty の Value に設定された値は無視されます。
ぼちぼちコードを追加したので、とりあえず pre 版としてリリースしてみました。まだ GitHub の PullRequest で絶賛作業中です。