This is a series of article that define my conventions on how to do Windows Presentation Framework (WPF) development using Expression Blend and the ‘MVVM toolkit’.
- Introduction
- Windows Presentation Foundation (WPF) Conventions
- Implementation using ‘MVVM Light’ toolkit
- Sample application
A year ago, I was looking into Silverlight and WPF development. I started to read about available frameworks and tried out frameworks from Caliburn to Prism. But with all those frameworks, I got frustrated by the steep learning curve and the inability to use an effective tool for editing XAML.
Lately, I created a SketchFlow prototype for a project I am working on using the latest edition of Expression Blend; to my surprise, I realized how much this tool has improved.
Soon, I started looking again at WPF development and came across a small but powerful toolkit; ‘MVVM Light’. And sure enough, by using Blend and the MVVM Light toolkit, UI development is a breeze and especially it is fun again. There is little to no plumbing code necessary, (any) events raised in the View are mapped to Commands in seconds, notifications can be broadcasted with ease and the whole MVVM pattern let’s you separate the code into testable units of work.
In this series of articles I introduce my conventions to WPF development that lead to:
- High degree of ‘separation of concerns’
- Simple design
- As little code as possible
- Reuse of code as much as possible
In addition, my goal is to write reusable Domain Services and ViewModels, so I only have to develop new target specific Views.

In order to achieve the above goals, you must define coding conventions that every team member will adhere to. The next article will just do that.