Book Image

Learn WinUI 3 - Second Edition

By : Alvin Ashcraft
5 (2)
Book Image

Learn WinUI 3 - Second Edition

5 (2)
By: Alvin Ashcraft

Overview of this book

WinUI 3 takes a whole new approach to delivering Windows UI components and controls and has the ability to deliver the same features across multiple versions of Windows. Learn WinUI 3 is a comprehensive introduction to WinUI and Windows apps for anyone who is new to WinUI and XAML applications. This updated second edition begins by helping you get to grips with the latest features in WinUI and shows you how XAML is used in UI development. The next set of chapters will help you set up a new Visual Studio environment, develop a new desktop project, incorporate the Model-View-ViewModel (MVVM) pattern in a WinUI project, and develop unit tests for ViewModel commands. Next, you’ll cover the basics of data access from WinUI projects with a step-by-step approach. As you advance, you’ll discover how to leverage the Fluent Design System to design beautiful WinUI applications. You’ll also explore the contents and capabilities of the Windows Community Toolkit and learn how to create cross-platform apps with markup and code from your project using Uno Platform. The concluding chapters will teach you how to build, debug, and deploy apps to the Microsoft Store. By the end of this book, you’ll have learned how to build WinUI applications from scratch and how to modernize existing desktop apps using WinUI 3 and the Windows App SDK.
Table of Contents (20 chapters)
Free Chapter
1
Part 1:Introduction to WinUI and Windows Applications
8
Part 2:Extending WinUI and Modernizing Applications
13
Part 3:Build and Deploy on Windows and Beyond

What this book covers

Chapter 1, Introduction to WinUI, examines the history of UI frameworks in Windows and the origins of WinUI, and you will create your first WinUI 3 project in Visual Studio.

Chapter 2, Configuring the Development Environment and Creating the Project, explains how to install and configure Visual Studio for WinUI development, the basics of XAML and C#, and kicks off the hands-on with a project that will be enhanced throughout the book.

Chapter 3, MVVM for Maintainability and Testability, introduces the basics of Model-View-ViewModel (MVVM) pattern, one of the most important design patterns when building XAML-based applications.

Chapter 4, Advanced MVVM Concepts, builds on the basics you learned about the MVVM pattern in WinUI apps to handle more advanced techniques. You’ll learn how to keep components loosely coupled and testable when adding new dependencies to your projects.

Chapter 5, Exploring WinUI Controls, explores some of the many controls and APIs that WinUI offers for developers building Windows applications. This chapter explores the brand-new controls and updated controls that were previously available in WinUI 2 and UWP.

Chapter 6, Leveraging Data and Services, looks at managing data, a core part of software development. This chapter covers some key concepts of data management, including state management and the service locator pattern.

Chapter 7, Fluent Design System for Windows Applications, explains the tenets of Microsoft’s Fluent Design System and how to implement them in your WinUI applications.

Chapter 8, Adding Windows Notifications to WinUI Applications, covers how to leverage the Windows App SDK to support push notifications and app notifications in your WinUI applications.

Chapter 9, Enhancing Applications with the Windows Community Toolkits, introduces the Windows Community Toolkit and the .NET Community Toolkit – collections of open source libraries for Windows developers. You will learn how to leverage the controls and helpers from the toolkits in your WinUI projects.

Chapter 10, Accelerating App Development with Template Studio, shows how to leverage Template Studio to create a new WinUI project, which can be a daunting task, built on the best Windows development patterns and practices.

Chapter 11, Debugging WinUI Applications with Visual Studio, shows how to leverage the XAML debugging tools in Visual Studio to track down pesky bugs in your WinUI project – good debugging skills are essential for developers.

Chapter 12, Hosting a Blazor Application in WinUI, looks at the WebView2 control in WinUI and using it to host a Blazor application deployed to the cloud from inside your Windows application.

Chapter 13, Take Your App Cross-Platform with Uno Platform, explains how to migrate a WinUI project to Uno Platform, which allows developers to write XAML and C# code in a single code base and run it on any platform.

Chapter 14, Packaging and Deploying WinUI Applications, explores some of the multiple options WinUI developers have for packaging and deploying WinUI applications, looking at deploying through the Microsoft Store, WinGet, and side-loading apps.