When implementing INotifyCollectionChanged
and raising the CollectionChanged
event, you must provide a NotifyCollectionChangedAction
argument. Which NotifyCollectionChangedAction
is used to indicate that an item in the collection has changed, such as in the case where an item's value changes?
views:
32answers:
2
+4
A:
If it's the same object, but a field changes (e.g. same Person, but different Person.Photo), the collection didn't change. Otherwise, every change to the collection is one of the Enum values.
If one Person is replaced by another, that's a Replace.
Matthew Flaschen
2010-06-02 13:43:33
Generally, items within a collection that implements `INotifyCollectionChanged` will implement `INotifyPropertyChanged`.
Stephen Cleary
2010-06-02 13:51:51
Ah, OK. I fixed my mental model ^_^
emddudley
2010-06-02 13:52:51
A:
If a property of an item has changed, but the item (i.e. the object) has remained the same, you should use INotifyPropertyChanged on the item.
Daniel Rose
2010-06-02 13:51:43