I have the following XAML:
Raising the PropertyChanged
event for the Items
property is only effective if the property value has actually changed. While you raise the event, the WPF binding infrastructure notices that the collection instance returned by the property getter is the same as before and does nothing do update the binding target.
However, when you return items.Values.ToList()
, a new collection instance is created each time, and the binding target is updated.