As we saw in the previous posts, a view model should be an abstract implementation of what the view needs to show about the model. We should implement an observable collection of something, we should implement an INotifyPropertyChanged interface and we should have a collection of RelayCommands. For these reasons, it simply to understand that we need a basic abstract ViewModel class, just to recycle some code. The Basic View Model. 1: namespace MVVM.ViewModel {
2: public abstract class ViewModel:INotifyPropertyChanged,IDisposable {
3:
4: ...