WinUI 3试玩报告

WinUI 3试玩报告

1. 什么是 WinUI 3

在微软 Build 2020 开发者大会上,WinUI 团队宣布可公开预览的 WinUI 3 Preview 1,它让开发人员可以在 Win32 中使用 WinUI。WinUI 3 Preview 1 包含新的 VisualStudio 项目模板,可以创建面向 .NET 5 的 C# 和 C++/Win32 项目。从技术上讲,WinUI 3 将 UWP 的 XAML、Composition 和 Input 层分离,并通过NuGet将它们独立分发给针对Windows 10 版本 1803 及更高版本的 Win32 应用。

WinUI 3 适用于 Win32 和 UWP,这篇文章主要讨论 Win32 的情况。

2. 理解 WinUI 3

以前我们总是抱怨 WPF 多年都不提供新的主题,不提供新的控件,性能又没提升。现在微软索性把什么都是新的 WinUI 3 提供给桌面开发,没 WPF 什么事了。

WinUI 3试玩报告

简单来说,UWP 的开发体验不好(关于这个话题真是一言难尽),而且出了 Bug 还必须等待下半年的 Windows 更新进行修复,但微软的开发人员专心给 UWP 的 UI 层加各种功能;.NET Core 更新很快,但很少人有兴趣有动力给陈旧的 WPF 的 UI 层进行大幅度的改进。于是 WinUI 将 UWP 的 UI 层从 Windows SDK 的其它部分分离,并将从 Windows 转移到 Nuget。现在建一个 C++ 或 C#(.NET 5) 程序,再从 Nuget 上装个 WinUI 3 的包套个 UI 层,一个基于 Fluent Design,触摸友好,性能无与伦比的应用程序就诞生了。

WinUI 3试玩报告

上图列举了 WinUI 3 和其他平台对比的部分特性,除此之外 WinUI 3 还有很多好处,例如开源、更新更快、更新不与系统版本绑定等,更详细的内容还是看微软自己怎么宣传吧:

WinUI - The modern native UI platform of Windows.

不过要用上 WinUI 3 还要等一年半载。下面是微软给出的发布路线图,目前我们也只能用 Preview 版尝尝鲜。

WinUI 3试玩报告

3. 试玩WinUI 3

要试玩 WinUI 3 首先要有 Windows 10 1803 以上版本的电脑(WinUI 3 最低支持1803),然后还需要使用 Visual Studio 2019 16.7 以上版本(目前只能安装预览版)。安装 Visual Studio 时要把以下工作负载全都选上:

.NET 桌面开发

通用 Windows 平台开发

使用 C++ 的桌面开发

适用于通用 Windows 平台负载的 C++(V142) 通用 Windows 平台工具可选组件

当然 .NET 5.0 也要装上。

然后在 https://aka.ms/winui3/previewdownload 下载并安装 WinUI 3 Project Templates 扩展,这样才可以在 Visual Studio 创建 WinUI 的项目。

可选 C++ 或 C# ,这里我选择了 C# 的“Blank App, Packaged
(WinUI in Desktop)”项目,并选择了对应的 Windows 平台:

WinUI 3试玩报告

WinUI 3试玩报告

项目创建后 Visual Studio 生成了两个项目。第一个包含应用的代码,代码结构基本和 UWP 一样,只是少了用于打包应用的 Package.appxmanifest 和一些图片。从依赖项里可以看到项目已经安装了 Microsoft.WinUI 3 的包。从项目属性里可以看到这就是个 .NET 5 的项目。

WinUI 3试玩报告

WinUI 3试玩报告

Visual Studio 生成的第二个项目是一个 Windows 应用程序打包项目,该项目经配置后可将应用生成为适合部署的 MSIX 程序包。 也就是说 UWP 项目中用于打包的部分被独立出来了。这个项目还应该是解决方案的启动项目。运行这个项目后创建的应用会添加到开始菜单中,这点也和UWP一样。

WinUI 3试玩报告

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wssfyf.html