Hierarchy of Viewmodel Base Classes
MugenMvvm has a bunch of base view models for different usage scenarios:
ViewModelBase- base class for all ViewModels. Contains methods for creation of others ViewModels, methods for message passing beetwen VMs, properties and method to control the state of async operations (
BusyMessage, etc.). Inherits
IClosableViewModelinterface that allows to control the closing behaviour of ViewModel.
CloseableViewModelclass and contains methods and properties for validation. Also implements
INotifyDataErrorInfoto notificate bindings about errors.
ValidatableViewModel, allows to edit and validate models. This viewmodel is tracing the state of model object and allows to undo any changes.
CloseableViewModelclass. Contains properties
DisplayName. The first one allows to trace whenever VM was selected. The second one allows to show some useful text on the View through binding on any text property in View's control. Implements
IViewAwareViewModelinterface that allows to work with View through
IView Viewproperty. Implements
INavigableViewModelinterface that allows to control navigation of ViewModel (through methods
ViewModelBase, allows to work with different collections of objects through mechanism of bindings.
CloseableViewModel, allows to work with collection of viewmodels (especially useful for work with
Updated less than a minute ago