網友評分: 5分
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 上。