XAML AcrylicBrush 또는 미리 정의된 AcrylicBrush 테마 리소스를 사용하여 앱 화면에 앱 내 아크릴을 적용할 수 있습니다.
WinUI에는 앱의 테마를 존중하고 필요에 따라 단색으로 대체되는 브러시 테마 리소스 컬렉션이 포함되어 있습니다. 특정 surface 그리려면 다른 브러시 리소스를 적용하는 것처럼 테마 리소스 중 하나를 요소 배경에 적용합니다.
<Grid Background="{ThemeResource AcrylicInAppFillColorDefaultBrush}">
비고
이러한 리소스는 microsoft-ui-xaml GitHub 리포지토리의 AcrylicBrush 테마 리소스 파일 볼 수 있습니다.
사용자 지정 아크릴 브러시
앱의 아크릴에 색 색조를 추가하여 브랜딩을 표시하거나 페이지의 다른 요소와 시각적 균형을 제공할 수 있습니다. 회색조가 아닌 색을 표시하려면 다음 속성을 사용하여 고유한 아크릴 브러시를 정의해야 합니다.
- TintColor: 색/색조 오버레이 계층입니다.
- TintOpacity: 색조 계층의 불투명도입니다.
- TintLuminosityOpacity: 아크릴 표면을 통해 백그라운드에서 허용되는 채도의 양을 제어합니다.
- FallbackColor: 배터리 절약 모드에서 아크릴을 대체하는 단색입니다. 배경 아크릴의 경우 앱이 활성 데스크톱 창에 없을 때 대체 색도 아크릴을 바꿉니다.
아크릴 브러시를 추가하려면 어둡고 밝은 테마와 고대비 테마에 대한 세 가지 리소스를 정의합니다. 고대비 모드에서는 어둡고 밝은 AcrylicBrush와 동일한 SolidColorBrushx:Key를 사용하는 것이 좋습니다.
비고
TintLuminosityOpacity 값을 지정하지 않으면 시스템이 TintColor 및 TintOpacity에 따라 값을 자동으로 조정합니다.
<ResourceDictionary.ThemeDictionaries>
<ResourceDictionary x:Key="Default">
<AcrylicBrush x:Key="MyAcrylicBrush"
TintColor="#FFFF0000"
TintOpacity="0.8"
TintLuminosityOpacity="0.5"
FallbackColor="#FF7F0000"/>
</ResourceDictionary>
<ResourceDictionary x:Key="HighContrast">
<SolidColorBrush x:Key="MyAcrylicBrush"
Color="{ThemeResource SystemColorWindowColor}"/>
</ResourceDictionary>
<ResourceDictionary x:Key="Light">
<AcrylicBrush x:Key="MyAcrylicBrush"
TintColor="#FFFF0000"
TintOpacity="0.8"
TintLuminosityOpacity="0.5"
FallbackColor="#FFFF7F7F"/>
</ResourceDictionary>
</ResourceDictionary.ThemeDictionaries>
다음 샘플에서는 코드에서 AcrylicBrush를 선언하는 방법을 보여줍니다.
AcrylicBrush myBrush = new AcrylicBrush();
myBrush.TintColor = Color.FromArgb(255, 202, 24, 37);
myBrush.FallbackColor = Color.FromArgb(255, 202, 24, 37);
myBrush.TintOpacity = 0.6;
grid.Fill = myBrush;
관련된 문서
Windows developer