Шаблоны WinUI 3 в Visual Studio

После настройки компьютера для разработки (см. статью Установка инструментов для Windows App SDK) можно приступать к созданию приложения на WinUI 3 на основе одного из шаблонов проектов WinUI 3 в Visual Studio. В этой теме описаны доступные шаблоны проектов и элементов. А статья Создание простого проекта WinUI 3 содержит пошаговые инструкции по созданию проекта.

Чтобы получить доступ к шаблонам проектов WinUI 3 в раскрывающихся списках фильтров диалогового окна Новый проект выберите C#/C++, Windows и WinUI соответственно. Кроме того, вы можете найти WinUI и выбрать один из доступных шаблонов на языке C# или C++.

WinUI project templates

Шаблоны проектов для WinUI 3

Эти шаблоны проектов WinUI 3 можно использовать для создания приложения.

Пустое, упакованное приложение (WinUI 3 в классических приложениях)

Он создает классическое приложение .NET (C#) или собственное приложение Win32 (C++) с пользовательским интерфейсом на основе WinUI 3. Созданный проект содержит в библиотеке WinUI 3 базовое окно, производное от класса Microsoft.UI.Xaml.Window, с помощью которого можно приступить к созданию пользовательского интерфейса. Дополнительные сведения об использовании этого шаблона проекта см. в статье Создание простого проекта WinUI 3.

Возможности этого шаблона проекта отличаются в разных версиях расширения пакета SDK для приложений для Windows.

  • Версия 1.0 Preview 2. Начиная с этого выпуска, этот шаблон проекта создает проект приложения с манифестом пакета и обеспечивает дополнительную поддержку для сборки приложения в пакете MSIX без использования отдельного проекта упаковки. Чтобы использовать этот шаблон проекта, вам также нудно установить расширение средств упаковки одного проекта MSIX для Visual Studio.

    Примечание.

    В версии 1.0 (предварительная версия 2) и выше этот шаблон проекта поддерживает только один исполняемый файл в созданном пакете MSIX. Если вам нужно объединить несколько исполняемых файлов в один пакет MSIX, вам потребуется использовать пустое приложение, упаковано с шаблоном проекта упаковки приложений Windows (WinUI 3 в классическом приложении) или добавить проект упаковки приложений Windows в решение.

  • Версия 1.0 (предварительная версия 1) и выше. В этих выпусках этот шаблон проекта создает решение с отдельным Проектом упаковки приложений Windows, который настроен для сборки приложения в пакет MSIX. Вы можете дополнительно установить расширение средств упаковки пакета MSIX одного проекта для Visual Studio и объединить параметры проекта упаковки в проект приложения. В таком случае вам не нужно будет поддерживать отдельный проект упаковки.

Пустое приложение, упакованое с помощью проекта упаковки приложений Windows (WinUI 3 на рабочем столе)

Этот шаблон проекта доступен в версии 1.0 (предварительная версия 1) и выше. Он создает классическое приложение .NET (C#) или собственное приложение Win32 (C++) с пользовательским интерфейсом на основе WinUI 3. Созданный проект содержит в библиотеке WinUI 3 базовое окно, производное от класса Microsoft.UI.Xaml.Window, с помощью которого можно приступить к созданию пользовательского интерфейса. Дополнительные сведения об использовании этого шаблона проекта см. в статье Создание простого проекта WinUI 3.

Это решение также включает в себя отдельный проект упаковки приложений Windows, настроенный для сборки приложения в пакет MSIX. Вы можете дополнительно установить расширение средств упаковки пакета MSIX одного проекта для Visual Studio и объединить параметры проекта упаковки в проект приложения. В таком случае вам не нужно будет поддерживать отдельный проект упаковки.

[Экспериментальный] Пустое приложение (WinUI 3 в UWP)

Этот шаблон проекта создает приложение UWP на C# или C++, которое имеет пользовательский интерфейс на основе WinUI 3. Созданный проект содержит в библиотеке WinUI 3 базовую страницу, производную от класса Microsoft.UI.Xaml.Controls.Page, с помощью которой можно приступить к созданию пользовательского интерфейса. Дополнительные сведения об этом шаблоне проекта см. в статье Создание первого приложения WinUI 3.

Шаблоны проектов WinUI для других компонентов

Эти шаблоны проектов WinUI 3 можно использовать для создания компонентов, которые сможет загрузить и использовать приложение на основе WinUI 3.

Шаблон Язык Description
Библиотека классов (WinUI 3 в классических приложениях) Только C# Создает управляемую библиотеку классов (DLL) .NET на языке C# , которую могут использовать другие классические приложения .NET с пользовательским интерфейсом на основе WinUI 3.
[Экспериментальный] Библиотека классов (WinUI 3 в UWP) Только C# Создает управляемую библиотеку классов (DLL) на языке C#, которую могут использовать другие приложения UWP с пользовательским интерфейсом на основе WinUI 3.
Компонент среды выполнения Windows (WinUI 3) C++ Создает компонент среды выполнения Windows, написанный на C++/WinRT, который может использоваться любым приложением UWP или классическим приложением с пользовательским интерфейсом на основе WinUI 3, независимо от того, на каком языке программирования это приложение написано.
[Экспериментальный] Компонент среды выполнения Windows (WinUI 3 в UWP) C# Создает компонент среды выполнения Windows, написанный на C#, который может использоваться любым приложением UWP с пользовательским интерфейсом на основе WinUI 3, независимо от того, на каком языке программирования это приложение написано.

Шаблоны элементов для WinUI 3

В проекте WinUI 3 можно использовать приведенные ниже шаблоны элементов. Чтобы получить доступ к этим шаблонам элементов WinUI 3, щелкните правой кнопкой мыши по узлу проекта в Обозревателе решений, выберите Добавить ->Новый элемент и щелкните WinUI в диалоговом окне Добавить новый элемент.

WinUI item templates

Примечание.

Если у вас установлен экспериментальный канал или более старая предварительная версия пакета SDK для приложений Windows, вы можете увидеть второй набор шаблонов элементов с префиксом [Экспериментальный]. Мы рекомендуем использовать шаблоны элементов с префиксом [Экспериментальный] только в тех случаях, когда приложение создается для ознакомления, а не для рабочей среды. При создании классического приложения для рабочей среды следует использовать шаблоны элементов без этой метки.

Шаблон Язык Description
Пустая страница (WinUI 3) Языки C++ и C# Добавляет XAML-файл и файл кода, который определяет новую страницу, производную от класса Microsoft.UI.Xaml.Controls.Page, в библиотеку WinUI 3.
Пустое окно (WinUI 3 в классических приложениях) Языки C++ и C# Добавляет XAML-файл и файл кода, который определяет новое окно, производное от класса Microsoft.UI.Xaml.Window, в библиотеку WinUI 3.
Настраиваемый элемент управления (WinUI 3) Языки C++ и C# Добавляет файл кода для создания элемента управления-шаблона со стандартным стилем. Элемент управления-шаблон является производным от класса Microsoft.UI.Xaml.Controls.Control в библиотеке WinUI 3.

Пошаговое руководство со сведениями об использовании этого шаблона элемента см. в статье Элементы управления-шаблоны XAML для приложений UWP и WinUI 3 на языке C++/WinRT и Элементы управления-шаблоны XAML для приложений UWP и WinUI 3 на языке C#. Дополнительные сведения об элементах управления-шаблонах см. в статье Пользовательские элементы управления XAML.
Словарь ресурсов (WinUI 3) Языки C++ и C# Добавляет пустую коллекцию ресурсов XAML с ключами. Дополнительные сведения см. в статье Ссылки на ресурсы ResourceDictionary и XAML.
Файл ресурсов (WinUI 3) Языки C++ и C# Добавляет файл для хранения строковых и условных ресурсов приложения. Этот элемент можно использовать для локализации приложения. Дополнительные сведения см. в разделе Локализация строк в манифесте пакета приложения и интерфейсе пользователя.
Пользовательский элемент управления (WinUI 3) Языки C++ и C# Добавляет XAML-файл и файл кода для создания пользовательского элемента управления, производного от класса Microsoft.UI.Xaml.Controls.UserControl, в библиотеку WinUI 3. Как правило, пользовательский элемент управления инкапсулирует связанные существующие элементы управления и предоставляет собственную логику.

Дополнительные сведения о пользовательских элементах управления см. в статье Пользовательские элементы управления XAML.

См. также