MVVM in WPF Survival Guide From A to Z

Discover a friendly and easy course on creating maintainable Windows applications using the MVVM pattern with WPF! Perfect for beginners and intermediate developers wanting to deepen their understanding.

  • Overview
  • Curriculum
  • Instructor
  • Review

Brief Summary

This course is designed to make you comfortable with the MVVM pattern in WPF! We'll dive deep, but in a chill way—no stress here. You'll learn all the essentials while building a small MVVM framework. Plus, we make it practical, so get ready to code!

Key Points

  • Understand MVVM architecture deeply
  • Learn to connect Views and ViewModels effectively
  • Explore popular MVVM frameworks like Caliburn.Micro

Learning Outcomes

  • Develop professional WPF applications using MVVM
  • Gain a solid understanding of View-First and ViewModel-First approaches
  • Implement unit testing for ViewModels effectively

About This Course

Learn how to create a maintainable Windows application applying MVVM to WPF. Introduction to Caliburn.Micro.

MVVM (stands for Model-View-ViewModel) is a well-known architectural pattern in the world of WPF. Most enterprise level WPF applications are MVVM-based.

Learn deeply the concepts lying behind the MVVM pattern in order to understand what MVVM is in essence and how to pragmatically apply it to a WPF application. This is a great MVVM tutorial for beginners (beginners in MVVM, don't forget to look at prerequisites)!

Teaching Approach

No fluff, no ranting, no beating the air. I respect your time. The course material is succinct, yet comprehensive. All important concepts are covered. Particularly important topics are covered in-depth. Don't forget that this course has English subtitles, so if you don't understand my accent, feel free to turn them on.

Take this course and you will be satisfied.

Build a strong foundation in applying MVVM with this course

In the case you’re just familiar with the WPF framework, learning this course will give you a level-up since you’ll be capable of developing professional WPF applications. Applying MVVM intelligently is a “must have” skill for WPF developers.

If you are an experienced WPF developer, you might be interested in how MVVM frameworks may work under the hood. Throughout the course, we will be building a small MVVM framework similar to Caliburn.Micro.  

Content and Overview

This course is primarily aimed at intermediate developers. Experts may also find interesting MVVM tricks provided in this course. If you are a beginner, be sure you’re ready to take this course, since it requires from you a solid C#-background and acquaintance with WPF.

This course provides solid theoretical base reinforced by tons of practical material. This course is very practical (except the very first introductory module).

“MVVM in WPF” is a very wide topic and it’s hardly possible to cover all the related challenges arising while applying MVVM. That’s why this course includes the most important topics understanding of which is a key for successful development. We will sacrifice some topics which may be interesting for students, but which are hardly connected with MVVM directly. What I’m talking about is, for example, the problem of setting up a full-fledged data access layer. Such topics are omitted.

The most beneficial aspect of this course is that it gives you the deep understanding of the MVVM pattern. For example, you’ll see how to pass parameters to ViewModels through constructors, without using a static message bus, or passing parameters by explicitly setting properties of a ViewModel.

In short, the course covers the following topics:

  • MVVM background: what is MVVM, why to use it, when to use MVVM etc.

  • Connecting Views and ViewModels: View-First and ViewModel-First approaches

  • Design-Time data support

  • Configuring and using an IoC-container (by the example of Castle.Windsor

  • Communication channel between Views and ViewModels: commands, attached and blend behaviors, static message bus (EventAggregator)

  • Navigation: hierarchical UI composition, how to open dialogs,  including modal dialogs, navigating to parameterized ViewModels (pass  parameters into their constructors)

  • Models and validation   

  • MVVM toolkits: Caliburn.Micro more closely

  • Unit-Testing of ViewModels

In the end, we will recap what you have learned and you will try to understand where you have to go further with the intention to master your skills. Here we will have a discussion of different paths you can go on.

------------------------------------------------------------

Keywords related to the course:

  • MVVM in WPF

  • MVVM tutorial

  • MVVM pattern

  • Model-View-ViewModel MVVM tutorial

  • Caliburn.Micro

  • View-First

  • ViewModel-First

  • Logically and physically structuring WPF applications according to MVVM pattern

  • Apply either View-First or ViewModel-First approach

  • Set up Design-Time Data

Course Curriculum

1 Lectures

Instructor

Profile photo of Engineer Spock
Engineer Spock

I'm thankful enough for that I love what I do.I began my career as a postgraduate student participating in Microsoft ImagineCup contest. I've been working with .NET platform since 2003. I've been professionally architecting and implementing software for nearly 7 years, primarily based on .NET platform. I'm passionate about building rich and powerful applications using modern technologies. I'm a certified...

Review
4.9 course rating
4K ratings
ui-avatar of Philippe Jacques
Philippe J.
4.0
8 months ago

I wish to continue learning from this topic, in this course but a lot is said by the presenter without visual support. A slide is shown but then the presenter discusses many details without showing an illustration of what he is saying.

  • Helpful
  • Not helpful
ui-avatar of Sweta Bharti
Sweta B.
4.5
8 months ago

it is very good

  • Helpful
  • Not helpful
ui-avatar of Jeremy Foster
Jeremy F.
5.0
8 months ago

Great information and a really great supplement to my knowledge base.

  • Helpful
  • Not helpful
ui-avatar of Jody Wilson
Jody W.
4.0
9 months ago

Good course.

  • Helpful
  • Not helpful
ui-avatar of Ashish Akhare
Ashish A.
5.0
10 months ago

good content for learning WPF with MVVM

  • Helpful
  • Not helpful
ui-avatar of Dmitri Novikov
Dmitri N.
4.5
1 year ago

The course covers a great amount of advanced material on MVVM. However, the content is very concise, and one should expect to spend some extra time with outside documentation while following along. Probably not the best first introduction to MVVM (nor does it claim to be), but really good for anyone trying to gain more in-depth knowledge. Some of the code, such as the section on Caliburn.Micro, is unfortunately outdated as of July 2024.

  • Helpful
  • Not helpful
ui-avatar of Wesley Dos Santos Barisch
Wesley D. S. B.
1.5
1 year ago

The terms used to explain require a high level of CS knowledge. If one has that already, the course is pointless

  • Helpful
  • Not helpful
ui-avatar of Hafid Zidani
Hafid Z.
3.0
1 year ago

je pense que ce cours est trés avancé, les examples sont introduits d'une facon rapide (copier coller)

  • Helpful
  • Not helpful
ui-avatar of Kenneth Ferrese
Kenneth F.
1.0
1 year ago

Examples unclear/too short, jumping around too fast to follow, swearing

  • Helpful
  • Not helpful
ui-avatar of Konstantin Staykov
Konstantin S.
1.5
1 year ago

For three days I've been trying to hang onto this course. It is called MVVM in WPF but most of the material is focused on WPF. Also a lot of talking and then high speed presentation with code that he pastes into Visual Studio. I recommend watching some YouTube videos instead of wasting your money on this one.

  • Helpful
  • Not helpful
Leave A Reply

Your email address will not be published. Required fields are marked *

Ratings

Courses You May Like

Lorem ipsum dolor sit amet elit
Show More Courses