This project provides an implementation of ObservableCollection which can watch a source BindingList or ObservableCollection, and transform the source elements into it's own target elements utilizing a user-provided transformation.
new ProjectedObservableCollection(sourceModelCollection, model => createViewModel(model));