ObservableCollection only provided notifications when we make any change in the collection itself like Adding or Removing an Item.
If we update any properties of a contained class, it doesn’t raise any notifications.
If I have an ObservableCollection of Person object and it is bind to a TreeView. If I add or remove person object from the ObservableCollection I will be able to see the changes in my TreeView also.
Here Person object has only one string property FullName
Now if I click on Change Name button, which simply renames the selected Person, I will not be able to see the change in my TreeView.
Here in this case we need to call the Refresh method of CollectionViewSource.
Have a look at this solution as well
Hope it helps.