WPF MVVM in Depth

This course provides end-to-end coverage of what you need to know to effectively apply the MVVM pattern to WPF applications.
Course info
Rating
(821)
Level
Intermediate
Updated
Feb 28, 2020
Duration
2h 56m
Table of contents
Course Overview
MVVM Pattern Fundamentals
First Taste of MVVM
Hooking up Views and ViewModels in MVVM
Communicating between Views and ViewModels in WPF
Applied MVVM - Hierarchies and Navigation
Applied MVVM - Validation and Dependency Injection
Description
Course info
Rating
(821)
Level
Intermediate
Updated
Feb 28, 2020
Duration
2h 56m
Description

The Model-View-ViewModel (MVVM) pattern has become one of the most common design patterns for WPF and XAML client applications. In this course, WPF MVVM in Depth, you'll learn about the MVVM design pattern and how to apply it to a wide range of compositional scenarios for building out WPF client applications.

First, you'll delve into the motivations for using the pattern, the fundamental concepts of the pattern, and how to apply it for a number of common scenarios.
Next-, you'll explore various different ways of defining Views, ViewModels, and how to attach them to one another.
Then, you'll discover how to use common data bound controls in the context of MVVM and how to hook them to ViewModels and Models, both statically and dynamically. Finally, you'll discover how to use View and ViewModel hierarchies and set up navigation between Views within a container.

When you're finished with this course, you'll have the necessary knowledge needed to apply the MVVM design pattern to your WPF client applications.

Course FAQ
Course FAQ
What is MVVM?

MVVM, or the Model-View-ViewModel design, is a software architectural pattern based on separating front- and back-end development components. It is an effective way to create client applications that capitalizes on the key features of the WPF platform.

What are the advantages of using MVVM?

Some advantages of MVVM include:

  • Helps map data closer to view parts
  • Provides 2-way communication between pattern parts
  • View controllers are considered part of the view layer
  • Smaller, reusable, and testable components
Who should take this course?

This course is for those who want to learn how to effectlively apply the MVVM pattern to WPF applications and build a highly sought after skillset.

What will I learn in this course?

You will learn:

  • MVVM pattern fundamentals
  • Reasons to use MVVM pattern
  • How to apply MVVM for common scenarios
  • How to define Views and ViewModels
  • How to attach Views and ViewModels
  • View and ViewModel hierarchies
  • Much more
Are there any prerequisites?

For this course you should be familiar with WPF applications. You should also have at least a general understanding of Views and ViewModels

About the author
About the author

Brian Noyes is CTO and Architect at Solliance, an expert technology solutions development company. Brian is a Microsoft Regional Director and MVP, and specializes in rich client technologies including XAML and HTML 5, as well as building the services that back them with WCF and ASP.NET Web API.

More from the author
More courses by Brian Noyes
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi. This is Brian Noyes, and welcome to my course, WPF MVVM in Depth. I'm a software architect with over 20 years' experience and have been an architect, trainer, and mentor in WPF and XAML applications since their inception. The Model‑View‑ViewModel, or MVVM, pattern, has become the most common design pattern for WPF and XAML client applications. MVVM helps you write applications that are loosely coupled, maintainable, and easy to extend, evolve, and test. In this course, you'll learn everything you need to know to employ the MVVM pattern in your WPF apps. You'll learn about the fundamentals of the pattern and how to structure your application code, including what kind of code goes in each of your views, view models, models, and client services. You'll see how to set up communications between the views and view models using commands, data binding, and behaviors. You'll learn how to handle loading and displaying views and how to navigate or switch between different views using MVVM. You'll also see how to handle data input validation with MVVM and how to use dependency injection to keep all the components of your app loosely coupled and testable. So join me for this course so you can learn how to transform the way you approach building your WPF applications while building a skillset that is highly sought after in WPF and XAML application development.