Applies to Silverlight 3, 4, 5 and WP7
Not all necessary building blocks are available out of the box in Silverlight when you want to start using the MVVM pattern. Certain base classes and/or components have to be written—your basic
ICommand implementations, a way to connect your View to your ViewModel, a way to communicate between ViewModels, and so on. Doing all of this by yourself would quickly result in quite a workload.
Due to the popularity of the pattern, quite a few MVVM-enabling frameworks have popped up, of which the best-known are probably Caliburn, Prism (more than just MVVM), and the MVVM Light Toolkit by Laurent Bugnion.
In this recipe (and the following ones), we will ...