应用简介
WinUI3.0正式版是专为编程开发人员打造的非常给力的开发运行框架,有了该框架,开发人员就能够在 Win32 中使用 WinUI,包含了最新的 VisualStudio 项目模板,可以创建面向 .NET 5 的 C# 和 C++/Win32 项目,从技术上讲,WinUI 3 将 UWP 的 XAML、Composition 和 Input 层分离,并通过NuGet将它们独立分发给针对Windows 10 版本 1803 及更高版本的 Win32 应用。
【安装方法】
要试玩 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 也要装上。
然后在本站点下载并安装 WinUI 3 Project Templates 扩展,这样才可以在 Visual Studio 创建 WinUI 的项目。
可选 C++ 或 C# ,这里我选择了 C# 的“Blank App, Packaged (WinUI in Desktop)”项目,并选择了对应的 Windows 平台。
项目创建后 Visual Studio 生成了两个项目。第一个包含应用的代码,代码结构基本和 UWP 一样,只是少了用于打包应用的 Package.appxmanifest 和一些图片。从依赖项里可以看到项目已经安装了 Microsoft.WinUI 3 的包。从项目属性里可以看到这就是个 .NET 5 的项目。
Visual Studio 生成的第二个项目是一个 Windows 应用程序打包项目,该项目经配置后可将应用生成为适合部署的 MSIX 程序包。 也就是说 UWP 项目中用于打包的部分被独立出来了。这个项目还应该是解决方案的启动项目。运行这个项目后创建的应用会添加到开始菜单中,这点也和UWP一样。
到这里为止都和预期的一样,我之后还尝试了将 UWP 应用移植到 WinUI ,基本上只需要将 Windows.UI 命名空间改为 Microsoft.UI就可以了,XAML 和 C# 代码完全不用变。只可惜目前 WinUI 还很简陋,Win2D、Community Toolkit 等微软自己发布的 UWP 包都还没有 WinUI 版本。而且没有设计视图,XAML 视图也没有智能感知,现在想要用 WinUI做些什么有趣的项目会很困难。不过从目前的移植难度上来看,将来正式发布后应该可以完整地将 UWP 的 UI 的开发经验运用在 WinUI 上。