Перейти к содержимому

Microsoft ui xaml что это

  • автор:

Window Класс

Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.

Представляет окно текущего приложения.

/// [Microsoft.UI.Xaml.Markup.ContentProperty(Name="Content")] /// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)] /// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)] /// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)] class Window
[Microsoft.UI.Xaml.Markup.ContentProperty(Name="Content")] [Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)] [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)] [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)] public class Window
Public Class Window

Наследование
Object IInspectable Window

Примеры

OnLaunched

В следующем примере кода показано переопределение метода OnLaunched , созданное для шаблона WinUI in Desktop в Microsoft Visual Studio. В этом коде демонстрируется типичное использование метода Activate в Window .

protected override void OnLaunched(Microsoft.UI.Xaml.LaunchActivatedEventArgs args) < m_window = new MainWindow(); m_window.Activate(); >private Window m_window; 

Создание нового окна

В приложениях вы можете создать каждое окно явным образом. Для создания нескольких окон требуется обновление 1.0.1 до WindowsAppSDK и ограничено одним потоком.

var window = new Window(); window.Content = new TextBlock() < Text = "Hello" >; window.Activate(); 

Вы также можете определить новое окно в разметке:

 Hello  

с соответствующим кодом программной части:

public partial class MainWindow : Window < public MainWindow() < InitializeComponent(); >> . var window = new MainWindow(); window.Activate(); 

Комментарии

В приложениях можно создать несколько Window потоков. См . статью Создание нового окна в разделе Примеры.

Window реализует IWindowNative для включения взаимодействия с помощью HWND Окна (WindowHandle).

Как правило, Window используется для задания uiElementзначения Content , представляющего пользовательский интерфейс приложения. Обычно это делается в рамках активации приложения (например, при переопределении OnLaunched ) и позволяет изменять содержимое окна на протяжении всего времени существования окна.

Убедитесь, что вы вызываете метод Activate для всех Window используемых при начальной активации. Если вы используете шаблоны приложений по умолчанию из Microsoft Visual Studio, Window.Activate включается в файл кода программной части App.xaml.

Конструкторы

Инициализирует новый экземпляр класса Window .

Свойства

Возвращает объект , связанный AppWindow с этим XAML Window .

Возвращает значение Rect, содержащее высоту и ширину окна приложения в единицах эффективных (просмотр) пикселей.

Возвращает значение Compositor для этого окна.

Возвращает или задает визуальный корень окна приложения.

Классические приложения всегда возвращают для null этого свойства.

Классические приложения всегда возвращают для null этого свойства.

Всегда возвращается null в приложении Windows App SDK.

Window.Dispatcher в будущих выпусках могут быть изменены или недоступны. Вместо этого используйте Window.DispatcherQueue .

DispatcherQueue Возвращает объект для окна.

Получает или задает значение, указывающее, должна ли быть скрыта строка заголовка окна по умолчанию для создания пространства для содержимого приложения.

Возвращает или задает системный фон, применяемый к данному Window объекту . Фон отображается за Window содержимым.

Возвращает или задает строку, используемую для заголовка окна.

Возвращает значение, указывающее, является ли окно видимым.

Методы

Пытается активировать окно приложения, переведя его на передний план и задав фокус ввода.

Закрывает окно приложения.

Включает поведение строки заголовка для элемента XAML, если ExtendsContentIntoTitleBar имеет значение true .

События

Происходит при успешной активации окна.

Происходит при закрытии окна.

Происходит при первом отрисовке окна приложения или изменении размера отрисовки.

Происходит при изменении значения свойства Visible .

Библиотека пользовательского интерфейса Windows 2.0

WinUI 2.0 — это первый общедоступный выпуск библиотеки пользовательского интерфейса Windows (выпущен в октябре 2018 г.).

WinUI — это самый простой способ создания замечательных интерфейсов Fluent Design для разработки Windows.

Он включает два пакета NuGet:

  • Microsoft.UI.Xaml: элементы управления и fluent Design для приложений UWP. Это основной пакет WinUI.
  • Microsoft.UI.Xaml.Core.Direct: низкоуровневые API для использования в компонентах ПО промежуточного слоя.

Скачать и использовать пакеты WinUI для приложения можно через диспетчера пакетов NuGet, как описано в статье о начале работы с библиотекой пользовательского интерфейса Windows.

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

Microsoft.UI.Xaml 2.0.181011001

Это первый выпуск пакета NuGet Microsoft.UI.Xaml. Включает в себя официальные нативные элементы управления и функции в стиле Fluent для приложений Windows UWP.

Новые возможности

Элементы управления и шаблоны в этом выпуске включают:

Функция Description
AcrylicBrush; Закрашивает область полупрозрачным материалом, который использует несколько эффектов, включая размытие и текстуру шума.
BitmapIconSource Представляет источник значков, в котором в качестве содержимого используется точечный рисунок.
ColorPicker Представляет элемент управления, позволяющий пользователю выбирать цвет с помощью цветового спектра, ползунков и ввода текста.
CommandBarFlyout Представляет специализированное всплывающее окно, которое предоставляет макет для AppBarButton и связанных элементов команды.
DropDownButton Представляет кнопку с шевроном, предназначенным для открытия меню.
FontIconSource Представляет источник значков, который использует глиф из указанного шрифта.
MenuBar Представляет специализированный контейнер, представляющий набор меню в горизонтальной строке, обычно в верхней части окна приложения.
MenuBarItem Представляет меню верхнего уровня в элементе управления MenuBar.
NavigationView Представляет контейнер, позволяющий переходить по содержимому приложения. У него есть заголовок, представление для основного содержимого и панель меню для команд навигации.
ParallaxView Представляет контейнер, связывающий положение прокрутки элемента переднего плана, например списка, к фоновому элементу, например изображению. При прокрутке элемента переднего плана он анимирует фоновый элемент, создавая эффект параллакса.
PersonPicture Представляет элемент управления аватаром пользователя отображает аватар для пользователя, если он доступен; в противном случае отображаются инициалы или универсальный глиф.
RatingControl Представляет элемент управления, позволяющий пользователю ввести оценку по звездам.
RefreshContainer Представляет элемент управления контейнера, предоставляющий функции RefreshVisualizer и «Потяните, чтобы обновить» для прокручиваемого содержимого.
RefreshVisualizer Представляет элемент управления, предоставляющий индикаторы анимированного состояния для обновления содержимого.
RevealBackgroundBrush Рисует фон элемента управления с эффектом проявления с помощью кисти композиции и световых эффектов.
RevealBorderBrush Рисует границу элемента управления с эффектом проявления с помощью кисти композиции и световых эффектов.
RevealBrush Базовый класс для кистей, использующих эффекты композиции и подсвечивания для реализации визуального проектирования отображения.
SplitButton Представляет кнопку, состоящую из двух частей, которые можно использовать по-отдельности. Одна часть представляет собой стандартную кнопку, а другая часть вызывает всплывающее окно.
SwipeControl Представляет контейнер, предоставляющий доступ к контекстным командам через сенсорные взаимодействия.
SymbolIconSource Представляет источник значков, в которой в качестве содержимого используется глиф из средств шрифта Segoe MDL2.
TextCommandBarFlyout Представляет специальное всплывающее меню панели команд, содержащее команды для редактирования текста.
ToggleSplitButton Представляет кнопку, состоящую из двух частей, которые можно использовать по-отдельности. Одна часть представляет собой выключатель, а другая часть вызывает всплывающее окно.
Представление в виде дерева Представляет иерархический список с разворачиваемыми и сворачиваемыми узлами, которые содержат вложенные элементы.

Примеры

Дополнительные сведения, рекомендации по проектированию и примеры кода см. в статье Проектирование и разработка приложений для Windows.

Приложения из коллекции WinUI 3 и коллекции WinUI 2 включают интерактивные примеры большинства элементов управления, возможностей и функций WinUI 3 и WinUI 2.

Если они уже установлены, откройте их с помощью следующих ссылок: коллекция WinUI 3 или коллекция WinUI 2.

Если они не установлены, вы можете скачать коллекцию WinUI 3 и коллекцию WinUI 2 из Microsoft Store.

Исходный код можно также получить из GitHub (используйте главную ветвь для WinUI 3 и ветвь winui2 для WinUI 2).

Документация

Практические руководства по элементам управления из библиотеки пользовательского интерфейса Windows вы найдете в документации по элементам управления универсальной платформы Windows.

Справочные документы по API находятся здесь: API библиотеки пользовательского интерфейса Windows.

Начало работы с библиотекой пользовательского интерфейса Windows 2

Библиотека пользовательского интерфейса Windows 2.8 — это последняя стабильная версия WinUI, которую можно использовать для создания рабочих приложений UWP (и классических приложений, использующих XAML Islands).

Эта библиотека доступна в виде пакета NuGet, который можно добавить в любой новый или существующий проект Visual Studio.

Дополнительные сведения о создании классических приложений Windows с использованием последней версии WinUI 3 см. в статье Библиотека пользовательского интерфейса Windows 3.

Загрузка и установка библиотеки пользовательского интерфейса Windows

  1. Скачайте Visual Studio 2022 и убедитесь, что вы выбрали рабочую нагрузку разработки универсальная платформа Windows в установщике Visual Studio.
  2. Откройте существующий проект или создайте новый проект с помощью шаблона «Пустое приложение»в Visual C# -> Windows -> Универсальный, или используя соответствующий шаблон для вашей языковой проекции.

Важно! Чтобы использовать WinUI 2.8, необходимо задать TargetPlatformVersion = 10.0.18362.0 и TargetPlatformMinVersion >>= 10.0.17763.0 в свойствах проекта.

  • На панели обозревателя решений щелкните название проекта правой кнопкой мыши и выберите Управление пакетами NuGet. Screenshot of the Solution Explorer panel with the project right-clicked and the Manage NuGet Packages option highlighted.
    Панель Обозревателя решений с открытым с помощью щелчка правой кнопкой проектом и выделенным параметром «Управление пакетами NuGet».
  • В диспетчере пакетов NuGet перейдите на вкладку Обзор и выполните поиск по запросу Microsoft.UI.Xaml или WinUI. Выберите нужные пакеты NuGet для библиотеки пользовательского интерфейса Windows (пакет Microsoft.UI.Xaml содержит элементы управления и функции, которые подходят для любых приложений). Щелкните Установить. Установите флажок «Включить предварительные выпуски», чтобы просмотреть последние предварительные версии, включающие экспериментальные новые функции. Screenshot of the NuGet Package Manager dialog box showing the Browse tab with winui in the search field and Include prerelease checked.
    Диалоговое окно диспетчера пакетов NuGet с открытой вкладкой «Обзор», в поле поиска которой отображается запись «winui», и флажком «Включить предварительные выпуски».
  • Добавьте ресурсы темы пользовательского интерфейса Windows (WinUI) в файл App.xaml. Это можно сделать двумя способами, в зависимости от наличия дополнительных ресурсов приложения. a. Если вам не нужны другие ресурсы приложений, добавьте элемент ресурсов WinUI

    b. Если у вас есть другие ресурсы, мы рекомендуем добавить их в XamlControlsResources.MergedDictionaries . Это работает с системой ресурсов платформы, чтобы разрешить переопределение ресурсов XamlControlsResources .

      На странице XAML добавьте ссылку в верхней части страницы.
    xmlns:muxc="using:Microsoft.UI.Xaml.Controls" 
    using MUXC = Microsoft.UI.Xaml.Controls; 

    Дополнительные шаги для проекта C++/WinRT

    Когда вы добавляете пакет NuGet в проект C++/WinRT, средство создает набор заголовков проекции в папке проекта \Generated Files\winrt . Чтобы поместить эти файлы с заголовками в свой проект и чтобы ссылки на эти новые типы работали, можно перейти к предварительно откомпилированному файлу заголовка (обычно pch.h ) и включить их в файл проекта. Ниже приведен пример, включающий созданные файлы заголовков для пакета Microsoft.UI.Xaml.

    // pch.h . #include #include #include #include . 

    Полное пошаговое руководство по добавлению простой поддержки библиотеки пользовательского интерфейса Windows в проект C++/WinRT см. в статье Простой пример библиотеки пользовательского интерфейса Windows для C++/WinRT.

    Дополнение к библиотеке пользовательского интерфейса Windows

    Мы приветствуем отчеты об ошибках, запросы функций и вклады кода сообщества в репозитории Microsoft-ui-xaml на GitHub.

    Другие ресурсы

    Если вы не знакомы с UWP, рекомендуем ознакомится со статьей Приступая к работе с приложениями для Windows 10 на портале разработчика.

    Заметки о выпуске библиотеки пользовательского интерфейса Windows 2

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

    WinUI включает два пакета NuGet:

    • Microsoft.UI.Xaml: элементы управления и fluent Design для приложений UWP. Это основной пакет WinUI.
    • Microsoft.UI.Xaml.Core.Direct: низкоуровневые API для использования в компонентах ПО промежуточного слоя.

    Скачать и использовать пакеты WinUI для приложения можно через диспетчера пакетов NuGet, как описано в статье о начале работы с библиотекой пользовательского интерфейса Windows.

    Примеры

    Дополнительные сведения, рекомендации по проектированию и примеры кода см. в статье Проектирование и разработка приложений для Windows.

    Приложения из коллекции WinUI 2 включают интерактивные примеры большинства элементов управления, возможностей и функций WinUI 2.

    Если приложение коллекции уже установлено, щелкните коллекцию WinUI 2, чтобы открыть ее.

    Если приложение коллекции не установлено, скачайте коллекцию WinUI 2 из Microsoft Store.

    Исходный код можно также получить из GitHub (выберите ветвь winui2).

    Документация

    Практические руководства по элементам управления из библиотеки пользовательского интерфейса Windows вы найдете в документации по элементам управления универсальной платформы Windows.

    Справочные документы по API находятся здесь: API библиотеки пользовательского интерфейса Windows.

    Журнал версий

    Версия пакета NuGet Microsoft.UI.Xaml Тип Дата запуска в производство Заметки о выпуске Советы
    2.8 stable Июль 2022 Заметки о выпуске WebView2
    2.7 stable Сентябрь 2021 года Заметки о выпуске InfoBadge, горизонтальная ориентация в ColorPicker
    2.6 stable Июнь 2021 года Заметки о выпуске Mica, Expander, BreadcrumbBar, ImageIcon, AnimatedIcon, PipsPager
    2.5 stable Декабрь 2020 г. Заметки о выпуске InfoBar, определение ProgressRing, FooterMenuItems для NavigationView
    2.4 stable Май 2020 г. Заметки о выпуске RadialGradientBrush, ProgressRing, обновления TabView, обновление темной темы для семейства элементов управления TextBox, иерархическая навигация
    2.3 stable Ноябрь 2019 г. Заметки о выпуске Обновление внешнего вида индикатора выполнения, NumberBox, RadioButtons
    2.2 stable Август 2019 Заметки о выпуске TabView, обновление NavigationView, обновление визуального стиля
    2.1 stable Апрель 2019 г. Заметки о выпуске Первый выпуск с открытым кодом из GitHub. Сюда входят ItemsRepeater, AnimatedVisualPlayer, TeachingTip, RadioMenuFlyoutItem, CompactDensity и Shadows.
    2.0 stable 2018 октября Заметки о выпуске Исходный выпуск. Включает в себя официальные нативные элементы управления и функции в стиле Fluent для приложений Windows UWP.

    Библиотека пользовательского интерфейса Windows 3, предварительная версия 4 (февраль 2021 г.)

    Дополнительные сведения о создании классических приложений Windows и приложений UWP с использованием последней версии WinUI 3 см. в статье Библиотека пользовательского интерфейса Windows 3.

  • Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *