The Model-View-ViewModel (MVVM) pattern has become the predominate UI separation pattern for XAML smart client applications including WPF, Silverlight, and even in WinRT/Metro. MVVM lets you separate out the responsibilities of structuring the view, supporting user interaction logic, and defining the data model and rules around it into clean layers in the presentation tier. In this talk you will learn about the basic implementation patterns of MVVM - which layer is responsible for what code. You will see how to leverage the rich features of data binding, commands, and validation in WPF to have rich interactive screens for the user but never end up in the hell of spaghetti code-behind. You'll also get some brief exposure to some of the toolkits such as Prism and MVVM Light that are available to make implementing the MVVM pattern easier.
You will learn:
- What goes in the view, the view model, and the model
- How to move data through the view model to the view
- How to structure user interaction logic in view models with commands