views:

32

answers:

2

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?

+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
Generally, items within a collection that implements `INotifyCollectionChanged` will implement `INotifyPropertyChanged`.
Stephen Cleary
Ah, OK. I fixed my mental model ^_^
emddudley
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