Loading...
C#
.NET
App-Development

App Development using the MVVM Pattern

To enable easy code reusability and testability of XAML-based applications, the MVVM pattern (Model-View-ViewModel) was created. This pattern allows easy code reuse between WPF, WinUI, MAUI, etc. In this workshop we will start with an introduction to the MVVM pattern. However, the MVVM pattern alone does not solve the application architecture of XAML-based applications. The MVVM pattern requires additional features and patterns which will be covered in this workshop. You will learn how views are connected to ViewModels, scenarios like master/detail views, validation of input, and more.

Content

  • Introduction to the MVVM Pattern
  • Use of Dependency Injection
  • Data Access and Calling REST Services
  • ViewModels and Views
  • Messaging with Events
  • User Input and Validation
  • Master/Detail Views
  • Navigation
  • Comparison of MVVM Frameworks

Introduction to the MVVM Pattern

Here you will learn an introduction to the MVVM pattern - with a comparison to the Model-View-Controller (MVC) and the Model-View-Presenter (MVP) pattern. Also covered are features that make the MVVM pattern possible: data binding and commands.

Dependency Injection

Code reuse and simple unit testing are two of the goals that are achieved with Dependency Injection. You will learn the basics of Dependency Injection (or the Holywood Principle), and also the use of Dependency Injection containers.

Data Access and Calling REST Services

Accessing REST services using the Repository Pattern, including caching of data - here you will learn how to access API services from the client application.

ViewModels and Views

A view model is connected to views. Views are mainly created with XAML code, view models with C#. The connection is done using data binding. Here you will learn how to create views and view models, as well as different ways to connect them.

Messaging with Events

Often you need communication between different view models, or a view model needs to communicate with a view. In such a communication it is important to keep the coupling low. Events help to do this.

User Input and Validation

After users have entered data, it helps to validate this data before sending it to the server. You can learn how to validate data here.

Master/Detail Views

Data often needs to be displayed with Master/Detail. Here you can learn how to do this with MVVM.

Navigation

Different platforms offer different ways to navigate between pages. These built-in navigation features often conflict with the MVVM pattern. How this can be solved, but also practical variants to easily implement navigation are covered here.

Request Training

Form..RequiredMessage
This field is required.
This field is required.
Please consent to the processing of the data provided