 <p>This is strange, if I'm reading your code correctly. Is there a reason that you can't maintain the collection and modify it (as opposed to re-creating it) so that you don't need to <code>RaisePropertyChanged</code> at all? That's what <code>ObservableCollection(of T)</code> does, after all. </p> <p>As I'm reading it, it might as well be an <code>IEnumerable(of T)</code>.</p> <p>(Creating a new <code>ObservableCollection(of T)</code> in a property getter is almost always a mistake. A <code>ReadOnlyObservableCollection(of T)</code> makes a lot more sense in that context.)</p>