I am confused about how ObservableCollection and INotifyPropertyChanged works.
I have this code:
Payments = new ObservableC
An ObservableCollection notifies its binder, with for example when something is added/deleted to the collection itself.
What you're doing in the second example however, is notifying the binder that the collection has been replaced by a new collection (something that the ObservableCollection does not do itself, if you do new ObservableCollection - there you lose the binding).