MVVM and WPF – Literature

Jul 30

Unfortunately there are no good books about the use of WPF and MVVM in Windows applications, and only a few good articles about it.

So I have decided to make here a list of web ressources that helped me to understand how WPF and MVVM works.

A good basic article is this one here, by Shamlia from Microsoft:

Understanding the basics of MVVM design pattern

Another recommendend reading is the introduction to MVVM by Paul Grenyer:

An Introduction to the WPF with the MVVM – Part 1

or maybe the link to the entire PDF document:

An Introduction to the WPF with the MVVM – PDF

Another recommended reading is the excellent EBook by Josh Smith – Advanced MVVM (available on Amazon and Lulu, and AFAIK also as paperback). It is worth the few money it costs:

Josh Smith – Advanced MVVM

And as last: Josh Smith wrote also a series of introductory articles to WPF on CodeProject:

Josh Smith: A guided tour to WPF

Other than, please look at Josh Smiths MVVM Foundation project – it is a very essential sample for a MVVM framework containing only a few basic classes:

Josh Smith: MVVM Foundation project

On StackOverflow, someone recommended me the following article by Jeremy Likness:

Jeremy Likness: Model-View-ViewModel MVVM Explained

Another guy writing a few articles about the structure of MVVM applications is Rico Suter, start with this one:

Rico Suter: Recommendations and best practices implementing MVVM WPF applications

And as last, articles in German language are available on the page of Norbert Eder, an Austrian programmer and author. Start here:

Norbert Eder: MVVM – das ViewModel

If someone has another recommended reading, please drop me an email at – I will check it and eventually add it here.

Why WPF and not WinForms

Jul 19

Since I had to repeat often why I choose WPF for .NET programming over WinForms, I have decided to write down my reasons here:

    WPF works much better than WinForms on todays high-resolution monitors like FullHD tablets and 4K displays
    with WPF it is much easier to build the moden interface designs my customers are asking
    WPF has a very powerful binding and is made for modern programming paradigms like MVVM. Therefore it permits a much cleaner design of the program structure
    WPF is what Microsoft recommends for new applications

I think, these reasons are worth to discard what I know about the Windows API.