Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Материалы — это визуальные эффекты, применяемые к поверхностям пользовательского интерфейса для создания глубины, иерархии и визуального интереса. WinUI 3 предоставляет четыре механизма применения материалов, каждый из которых подходит для разного сценария.
Important
AcrylicBrush — это акриловый эффект только внутри приложения — он размывает содержимое XAML внутри окна приложения. Рабочий стол или другие окна позади приложения не отображаются. Для эффектов прозрачности рабочего стола используйте Window.SystemBackdrop или SystemBackdropElement.
Какой материал следует использовать?
| Сценарий | Материал | API |
|---|---|---|
| Окно приложения с фоном «Mica» (с оттенком обоев) | Mica | Window.SystemBackdrop = new MicaBackdrop() |
| Окно приложения с полупрозрачным фоном из матового стекла | Акрил рабочего стола | Window.SystemBackdrop = new DesktopAcrylicBackdrop() |
| Выпадающее меню, всплывающее меню или контекстное меню с акриловым фоном | Системный фон на поверхности | Установите SystemBackdrop для FlyoutBase, Popup и т. д. |
| Боковая панель, панель или элемент с микой или акрилом (не во всем окне) | SystemBackdropElement | контроллер <SystemBackdropElement> |
| Панель навигации или панель содержимого с эффектом размытия в приложении | Акрил в приложении | {ThemeResource AcrylicInAppFillColorDefaultBrush} |
Нет материала (по умолчанию)
Если материал не применяется, фон окна является сплошным цветом, нарисованным из активной светлой или темной темы — без размытия или транслюкентности.
Материалы используют эффекты компостора, требующие поддержки оборудования и пользовательских настроек. WinUI 3 использует сплошной цвет, если материал не удаётся отрисовать:
-
Remote Desktop или виртуальные машины — компостор не может смешиваться с рабочим содержимым рабочего стола по протоколу RDP, поэтому
SystemBackdropматериалы автоматически возвращаются. - Недостаточно мощное графическое оборудование — для Mica и Desktop Acrylic требуются DirectX 11 и достаточный объём видеопамяти. Устройства, которые не достигают порогового значения, используют однотонный цвет темы.
-
Эффекты прозрачности отключены — если пользователь отключил Эффекты прозрачности в Параметры > Персонализация > Цвета, все
SystemBackdropматериалы иAcrylicBrushбудут заменены их однотонными вариантами. -
Активная экономия батареи — Windows отключает акрил (
DesktopAcrylicBackdropиAcrylicBrush) при включении экономии батареи. Мика не затрагивается. - Режим высокой контрастности — все материалы подавляются; Вместо этого система применяет цвета темы высокой контрастности.
Приложению не нужно обнаруживать эти условия— API-интерфейсы обрабатывают резервный вариант автоматически. Убедитесь, что любой настроенный вами FallbackColor или фон темы хорошо смотрится в виде простой однотонной заливки.
Mica
Mica использует цвет обоев рабочего стола пользователя в качестве приглушённого персонализированного фона. Он предназначен для фона основного окна приложения, особенно в области заголовка и области навигации.
-
API:
Window.SystemBackdrop = new MicaBackdrop() -
Варианты:
MicaKind.Base(по умолчанию) илиMicaKind.BaseAlt(легче для вторичных поверхностей) - Windows версия: только Windows 11. Возвращается к сплошной цветовой теме на Windows 10.
Акрил для рабочего стола
Акрил рабочего стола показывает в реальном времени размытое изображение рабочего стола и содержимого позади окна приложения, создавая эффект матового стекла.
-
API:
Window.SystemBackdrop = new DesktopAcrylicBackdrop() -
Варианты:
DesktopAcrylicKind.Base(более непрозрачные) илиDesktopAcrylicKind.Thin(более прозрачные) - Версия Windows: Windows 10 (сборка 17763) и более поздних версий.
Acrylic также можно применять к временным поверхностям — задайте SystemBackdrop для FlyoutBase, Popup, MenuFlyoutPresenter или CommandBarFlyoutCommandBar. Полный список см. в разделе Системные фоны.
SystemBackdropElement
SystemBackdropElement применяет материал Mica или Desktop Acrylic с помощью компоновщика ОС к конкретному элементу XAML, а не ко всему окну. Используйте его, когда боковой панели, панели или карточке нужен собственный фон Mica или Acrylic независимо от остального окна.
- Минимальный пакет SDK: Windows App SDK 1.6.3
- Дополнительные сведения и примеры кода см. в разделе "Применение системного фона к любому элементу XAML".
Акрил в приложении (AcrylicBrush)
AcrylicBrush размывает содержимое XAML в окне приложения. Он не отображает рабочий стол или другие окна через поверхность. Используйте его для панелей навигации, боковой панели или панелей содержимого, где требуется полупрозрачный эффект в приложении.
-
API: применение
{ThemeResource AcrylicInAppFillColorDefaultBrush}к элементуBackgroundили определение пользовательскогоAcrylicBrushс помощьюTintColor,TintOpacityа такжеTintLuminosityOpacity. - Свойство UWP
BackgroundSource = HostBackdropнедоступно в WinUI 3. - Дополнительные сведения и примеры кода см. в разделе "Акрил в приложении".
Связанные статьи
Windows developer