Wpf 将ObserverPropertyHelper中的CollectionChanged和PropertyChanged通知与ReactiveUI组合

Wpf 将ObserverPropertyHelper中的CollectionChanged和PropertyChanged通知与ReactiveUI组合,wpf,system.reactive,reactiveui,Wpf,System.reactive,Reactiveui,我有一个reactiveobjectviewmodel,它包含一个IObservableCollection和一个在修改INPC时引发INPC的常规属性,即vanilla WPF 我想实现一个observeForPropertyHelper支持的只读,每当常规属性更改或集合更改引发其CollectionChanged事件时,该只读将重新计算 我知道我可以使用常规属性的whenyValue实现这一点,从EventPattern为collectionchanged事件创建一个observable,然

我有一个reactiveobjectviewmodel,它包含一个IObservableCollection和一个在修改INPC时引发INPC的常规属性,即vanilla WPF

我想实现一个observeForPropertyHelper支持的只读,每当常规属性更改或集合更改引发其CollectionChanged事件时,该只读将重新计算


我知道我可以使用常规属性的whenyValue实现这一点,从EventPattern为collectionchanged事件创建一个observable,然后使用CombineTest将它们缝合在一起。我的问题是——有没有一种不那么可怕的方法?是否有内置的ReactiveUI功能可以帮助我实现这一点?

您可以将ObservableCollection替换为ReactiveUI的ReactiveCollection,后者在集合更改时公开一个IObservable

您还可以使用ReactiveUI的ObservableForProperty而不是WhenAny,这将更加简洁,因为您只观察1个属性


除此之外,您所描述的是我将如何做到这一点。

请在您的代码中提供可怕的实现,然后我们可以尝试为您改进它。现在很难确定你到底想要什么,我们要做大量的工作来猜测你想要什么。请让我们很容易回答您的问题。