Поделиться через


WinUI

Логотип WinUI

Внимание

В настоящее время существует два поколения WinUI: WinUI 2 для UWP и WinUI в пакете SDK для приложений Windows (WinUI 3). Хотя оба приложения можно использовать в рабочих приложениях в Windows 10 и более поздних версиях, каждая из них имеет разные целевые показатели разработки.

См. сравнение WinUI 3 и WinUI 2.

WinUI — это платформа пользовательского интерфейса (UX) для классических приложений Windows и UWP.

Включая систему Fluent Design во все интерфейсы, элементы управления и стили, WinUI предоставляет единообразные, интуитивно понятные и доступные возможности, используя новейшие шаблоны пользовательского интерфейса.

С поддержкой классических приложений и приложений UWP можно создавать с помощью WinUI с нуля или постепенно переносить существующие приложения MFC, WinForms или WPF с помощью знакомых языков, таких как C++, C#, Visual Basic и JavaScript (с помощью React Native для Windows).

Библиотеки WinUI размещаются в репозитории WinUI GitHub, где можно файлировать запросы функций или ошибки, а также взаимодействовать с WinUI, где можно файлировать запросы функций или ошибки, а также взаимодействовать с командой WinUI.

Сравнение WinUI 3 и WinUI 2

В следующей таблице показаны некоторые наиболее существенные различия между WinUI 3 в Windows App SDK и WinUI 2 для UWP.

Использование WinUI 3 в Windows App SDK Использование WinUI 2 для UWP
WinUI 3 поставляется с пакетом Windows App SDK. WinUI 2, 2-е поколение WinUI, поставляется как автономный пакет NuGet и интегрирован с пакетами SDK для Windows.
Стек пользовательского интерфейса и библиотека элементов управления полностью отделены от пакетов SDK для ОС и Windows, включая базовую платформу, композицию и входные слои стека пользовательского интерфейса. Стек пользовательского интерфейса и библиотека элементов управления тесно связаны с пакетами SDK для ОС и Windows.
WinUI 3 можно использовать для создания готовых к работе классических приложений или приложений Win32 для Windows. WinUI 2 можно использовать в приложениях UWP, а также встраивать в классические приложения, используя XAML Islands (инструкции по установке см. в статье Начало работы с библиотекой WinUI 2).
WinUI 3 входит в пакет платформы пакет SDK для приложений Windows с шаблонами проектов Visual Studio в расширении пакета SDK для приложений Windows от Visual Studio (VSIX). Часть WinUI 2 поставляется в самой операционной системе (семейство API UWP WinRT)* и часть ее поставляется в виде библиотеки ("WinUI 2") с дополнительными элементами управления, элементами и последними стилями, которые уже включены в саму операционную систему. WinUI 2 добавляет эти функции в состав загружаемого пакета NuGet. Однако другие важные части стека пользовательского интерфейса, такие как основная инфраструктура XAML, входные и составные слои, все еще встроены в ОС.
WinUI 3 поддерживает C# (.NET 6 и более поздних версий) и C++ для классических приложений. WinUI 2 поддерживает C# и Visual Basic (.NET Native), а также приложения C++.
WinUI 3 поддерживается только в проектах на основе рабочих столов. Чтобы использовать WinUI 3, для проектов UWP можно изменить тип проекта на тип на основе рабочего стола (см. статью о миграции приложения UWP на пакет SDK для приложений Windows). WinUI 2 можно включить в рабочие приложения UWP, установив пакет NuGet в новый или имеющийся проект UWP. Затем на элементы управления и стили WinUI можно ссылаться непосредственно в новых приложениях или путем изменения ссылок пространства имен Windows.UI. на Microsoft.UI. в существующих приложениях.
WinUI 3 поддерживает элемент управления WebView2 на основе Chromium WinUI 2 поддерживает элемент управления WebView на всех устройствах и начиная с WinUI 2.8, элемента управления WebView2 на рабочем столе.
WinUI 3 работает с обновлением Windows 10 за октябрь 2018 г. (версия 1809, сборка ОС 17763). WinUI 2.0–2.7 работает с обновлением Windows 10 Creators Update (версия 1703, сборка ОС 15063). WinUI 2.8 и выше работает с обновлением Windows 10 за октябрь 2018 г. (версия 1809, сборка ОС 17763).

См. также