My Account Log in

1 option

Learn WinUI 3.0 : leverage the power of WinUI, the future of native Windows application development / Alvin Ashcraft.

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Ashcraft, Alvin, author.
Language:
English
Subjects (All):
C (Computer program language).
Physical Description:
1 online resource (440 pages)
Place of Publication:
Birmingham, England ; Mumbai : Packt, [2021]
System Details:
Mode of access: World Wide Web.
Summary:
WinUI is the future of Windows application development. It is the first step in Microsoft's Project Reunion, an open source effort to unify Windows development on an SPA. This book will help developers get up to speed with WinUI quickly to build new Windows applications or modernize existing desktop applications with the power of XAML Islands.
Contents:
Cover
Title Page
Copyright and Credits
Dedication
Contributors
Table of Contents
Preface
Section 1: Introduction to WinUI and Windows Applications
Chapter 1: Introduction to WinUI
Technical requirements
Before UWP - Windows 8 XAML applications
Windows application UI design
Windows Runtime (WinRT)
User backlash and the path forward to Windows 10
Windows 10 and UWP application development
Language choice with UWP development
Lifting app restrictions
UWP backward compatibility
What is XAML?
Creating an adaptive UI for any device
Powerful data binding
Styling your UI with XAML
Separating presentation from business logic
What is WinUI?
The first WinUI release
The road to WinUI 3.0
What's new in WinUI 3.0?
Goodbye UWP?
New features for WinUI 3.0
Project Reunion and WinUI
WinUI compared to other Windows development frameworks
WinUI versus UWP
WinUI versus WPF
WinUI versus Windows Forms (WinForms)
Summary
Questions
Chapter 2: Configuring the Development Environment and Creating the Project
Installing Visual Studio and Windows development workloads
Adding the WinUI app templates
Introducing the application idea
Reviewing the application features
WinUI in UWP versus WinUI in Desktop projects
Creating your first WinUI project
Anatomy of a WinUI in UWP project
Reviewing App.xaml
Reviewing App.xaml.cs
Reviewing MainPage.xaml
Reviewing MainPage.xaml.cs
Reviewing the project references
Reviewing the project properties
XAML basics
Building the model
Creating sample data
Building the initial UI
Completing the data-binding initialization
Creating the DataTemplate and binding the UI
Understanding WinUI and UWP
Understanding the UWP app model.
Working with WinUI controls, properties, and events
Adding a ListView header
Creating the ComboBox filter
Adding a new item button
Chapter 3: MVVM for Maintainability and Testability
Understanding MVVM
MVVM - the big picture
MVVM libraries for WinUI
Windows Community Toolkit MVVM library
Prism Library
MVVMCross
Choosing a framework for WinUI applications
Understanding data binding in WinUI
What are markup extensions?
Binding markup extension
x:Bind markup extension
Updating View data with INotifyPropertyChanged
Updating collection data with INotifyCollectionChanged
Implementing MVVM in WinUI applications
Working with events and commands
Implementing ICommand
Using commands in the ViewModel
Updating the View
Choosing a unit test framework
Chapter 4: Advanced MVVM Concepts
Understanding the basics of DI
Using DI with ViewModel classes
Leveraging x:Bind with events
Page navigation with MVVM and DI
Adding ItemDetailsPage
Adding new interfaces and services
Creating a navigation service
Creating a data service
Increasing maintainability by consuming services
Handling parameters in ItemDetailsPage
Creating the ItemDetailsViewModel class
Chapter 5: Exploring WinUI Controls
Understanding what WinUI offers developers
Animated visual player (Lottie)
Navigation view
Parallax view
Rating control
Two-pane view
Exploring the XAML Controls Gallery Windows app
Learning about the ScrollViewer control
Reviewing what's new in WinUI 3.0
Backward compatibility
Visual Studio tooling
Input validation
A new WebView
Exploring the XamlDirect APIs for middleware authors.
Adding some new controls to the project
Using the SplitButton control
Adding a TeachingTip to the save button
Further reading
Chapter 6: Leveraging Data and Services
Managing application state with app life cycle events
Exploring Windows application life cycle events
Life cycle events of WinUI applications
Creating a SQLite data store
What is SQLite?
Adding SQLite to DataService
Leveraging a Micro ORM to simplify data access
Adding Dapper to the project
Updating the data service's initialization
Retrieving data via services
Performing data validation with MVVM
Section 2: Extending WinUI and Modernizing Applications
Chapter 7: Fluent Design System for Windows Applications
What is the Fluent Design System?
Exploring Fluent Design for Windows
Controls
Patterns
Layout
Input
Style
Incorporating Fluent Design in WinUI applications
Updating the title bar
Changing the style of MainPage
Changing the style of ItemDetailsPage
Using the Fluent XAML Theme Editor
Colors
Shapes
Using the UWP Resources Gallery
Design resources and toolkits for Fluent Design
Chapter 8: Building WinUI Apps with .NET 5
Creating a WinUI project with .NET 5
What is WinUI in Desktop?
Creating a new WinUI in Desktop project
Exploring the Desktop project structure
Adding the WebView2 control
Exploring the Packaging project
Visual assets in the Manifest Designer
Referencing .NET 5 Libraries from your project
Sharing the .NET 5 library with a WPF application
Creating a WinUI control library
Chapter 9: Enhancing Applications with the Windows Community Toolkit
Technical requirements.
Introducing the WCT
Origins of the WCT
Reviewing recent toolkit releases
Exploring the Windows Community Toolkit Sample App
Installing and launching the sample app
WPF and WinForms controls
Using controls from the toolkit
Creating the WinUI in Desktop project
Referencing the WCT packages
Adding data to the DataGrid
Adding controls to the MainWindow
Exploring the toolkit's helpers, services, and extensions
Helpers
Services
MVVM
Extensions
Chapter 10: Modernizing Existing Win32 Applications with XAML Islands
What is XAML Islands?
Modernizing a WinForms application with XAML Islands
Creating a shared class library project
Creating the WinForms host project
Modernizing a WPF application with XAML Islands
Using the UWP MapControl in WPF
Using the WebViewCompatible browser control in WPF
Working with the WebView2 browser control in WinForms
Section 3: Build and Deploy on Windows and Beyond
Chapter 11: Debugging WinUI Applications with Visual Studio
Debugging in Visual Studio
Debugging local applications
Debugging remote applications
Common XAML layout mistakes
Improving your XAML with static code analysis
Learning to pinpoint data binding errors
Common mistakes in data binding
Using the XAML Binding Failures window
Debugging live data with Live Visual Tree and Live Property Explorer
Coding with XAML Hot Reload
Debugging with Live Visual Tree and Live Property Explorer
Chapter 12: Hosting an ASP.NET Core Blazor Application in WinUI
Getting started with ASP.NET Core and Blazor
Exploring some history of ASP.NET and ASP.NET Core
What is Blazor?.
WebAssembly and client-side .NET development
Creating a Blazor Wasm application
Building a simple application for tracking tasks
Exploring Blazor Wasm deployment options
Deployment options for Blazor Wasm projects
Publishing Blazor to Azure Static Web Apps hosting
Pushing the project to GitHub
Creating an Azure Static Web Apps resource
Publishing an application with GitHub Actions
Hosting your Blazor application in the WinUI WebView2
Chapter 13: Building, Releasing, and Monitoring Applications with Visual Studio App Center
Getting started with Visual Studio App Center
Creating an App Center account
Creating your first App Center application
Setting up builds in App Center
Integrating App Center with a GitHub repository
Deploying your application with App Center
Creating early releases of your application or beta testers
Application monitoring and analytics
Instrumenting your code
Gathering and analyzing App Center crash reports
Chapter 14: Packaging and Deploying WinUI Applications
Discovering application packaging and MSIX basics
What is MSIX?
Reviewing MSIX tools and resources
Getting started with application packaging in Visual Studio
Deploying applications with Windows Package Manager
Adding a package to the community repository
Using WinGet for package management
Distributing applications with the Microsoft Store
Preparing a free application for the Microsoft Store
Uploading a package to the Store
Sideloading WinUI applications with MSIX
Creating an MSIX package for sideloading
Sideloading an MSIX package
Assessments
Chapter 1
Chapter 2
Chapter 3
Chapter 4
Chapter 5
Chapter 6
Chapter 7
Chapter 8.
Chapter 9.
Notes:
Includes bibliographical references and index.
Description based on print version record.
ISBN:
1-80020-739-5
OCLC:
1244631244

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Library Catalog Using Articles+ Library Account