Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Learn WinUI 3.0

You're reading from   Learn WinUI 3.0 Leverage the power of WinUI, the future of native Windows application development

Arrow left icon
Product type Paperback
Published in Mar 2021
Publisher Packt
ISBN-13 9781800208667
Length 440 pages
Edition 1st Edition
Tools
Arrow right icon
Author (1):
Arrow left icon
Alvin Ashcraft Alvin Ashcraft
Author Profile Icon Alvin Ashcraft
Alvin Ashcraft
Arrow right icon
View More author details
Toc

Table of Contents (20) Chapters Close

Preface 1. Section 1: Introduction to WinUI and Windows Applications
2. Chapter 1: Introduction to WinUI FREE CHAPTER 3. Chapter 2: Configuring the Development Environment and Creating the Project 4. Chapter 3: MVVM for Maintainability and Testability 5. Chapter 4: Advanced MVVM Concepts 6. Chapter 5: Exploring WinUI Controls 7. Chapter 6: Leveraging Data and Services 8. Section 2: Extending WinUI and Modernizing Applications
9. Chapter 7: Fluent Design System for Windows Applications 10. Chapter 8: Building WinUI Apps with .NET 5 11. Chapter 9: Enhancing Applications with the Windows Community Toolkit 12. Chapter 10: Modernizing Existing Win32 Applications with XAML Islands 13. Section 3: Build and Deploy on Windows and Beyond
14. Chapter 11: Debugging WinUI Applications with Visual Studio 15. Chapter 12: Hosting an ASP.NET Core Blazor Application in WinUI 16. Chapter 13: Building, Releasing, and Monitoring Applications with Visual Studio App Center 17. Chapter 14: Packaging and Deploying WinUI Applications 18. Assessments 19. Other Books You May Enjoy

Implementing MVVM in WinUI applications

It's time to start converting our project to use MVVM. As we previously learned, we can best leverage the power and performance of WinUI bindings if we build our own MVVM framework. For most applications, it's not much more than a single base class:

  1. Start by adding a ViewModels folder to the project. If you are using the code from GitHub, you can either continue with your project from the previous chapter or use the Start project in the folder for this chapter.
  2. Next, add a new class to the ViewModels folder and name it BindableBase. This will be the base class for all of our View Model classes in the project. It will be responsible for notifying the corresponding views of any property changes. This is accomplished by implementing the INotifyPropertyChanged interface. Let's review the BindableBase class code, as follows:
    public class BindableBase : INotifyPropertyChanged
    {
        public event PropertyChangedEventHandler...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image