MVVM: Tutorial from start to finish?
Your question really seems to be asking 2 questions:
- Where are some good tutorials on WPF, assuming I have no previous WPF experience?
- Where are some good tutorials on learning MVVM?
Some of these resources may be duplicated in previous answers...
Tutorials on WPF
-
A Guided Tour of WPF by Josh Smith
I wrote a series of introductory WPF articles on The Code Project. The goal of those articles is to bring someone with no WPF experience up-to-speed enough so that (s)he can fully understand how the series’ demo application works.
Bea Stollnitz (link is to her archives) has a number of great articles on WPF.
WPF: A Beginner's Guide - Part 1 of n by Sacha Barber
WindowsClient.net WPF Training Videos
MVVM Tutorials
WPF Apps With The Model-View-ViewModel Design Pattern by Josh Smith (duplicate link already provided by Yacoder)
Jason Dolinger's presentation on the Model-View-ViewModel (link to video embedded in article)
Dan Crevier's DataModel-View-ViewModel pattern series (similar to MVVM)
Composite WPF (Prism) Resources
Though not exactly what you asked, it is the natural progression with WPF and MVVM.
Codeplex: Composite WPF (Prism)
Silver Bay Labs has a number of great videos on learning Prism
Channel 9: 10 step-by-step videos on using Silverlight and Prism
Codeplex: Introduction to Composite WPF (CAL, Prism): Part 1 (of n)
I was in exactly the same situation recently, mate, and I can tell you what I did.
Josh Smith "WPF Apps With The Model-View-ViewModel Design Pattern" read again, again and again :-) download the code, examine, compile and keep it around
MVVM foundation
- Examine the framework, use it in your app.
- Look at the Demo application in that framework.
No real start-to-finish tutorials, sorry...
I really liked these articles:
- MVVM for Tarded Folks Like Me
- How Tards Like Me Make MVVM Apps
He really dumbs down the concept in a humorous way. Worth reading.
Reed Copsey published a nice tutorial that writes a trivial RSS app in WinForms, then makes a straight port to WPF, and finally converts to MVVM. It makes a nice introduction to MVVM before you try and tackle a full description like Josh Smith's article. I'm glad that I read Reed's tutorial before Josh's article, because it gives me a little context to understand the details that Josh is digging into.