У меня есть простой код:
class ItemViewModel : ReactiveObject
{
private string _name;
private string _value;
public ItemViewModel(string name, string value)
{
_name = name;
_value = value;
}
public string Name
{
get => _name;
set => this.RaiseAndSetIfChanged(ref _name, value);
}
public string Value
{
get => _value;
set => this.RaiseAndSetIfChanged(ref _value, value);
}
}
IObservable<IChangeSet<ItemViewModel>> changeSet = CreateChangeSet();
Я хочу отреагировать на любое изменение свойства Value
в любом из объектов в наборе изменений и сделать что-то с новым значением. Я пробовал вот так:
changeSet
.WhenPropertyChanged(x => x.Value)
.DistinctUntilChanged()
.Subscribe(value =>
{
// do sth with value
});
, но WhenPropertyChanged
предоставляет начальное значение для каждого элемента при инициализации коллекции, и я хочу избежать этого. Как я могу это сделать?