Delen via


In-app acryl

U kunt acryl in de app toepassen op de oppervlakken van uw app met behulp van een XAML AcrylBrush of vooraf gedefinieerde AcrylicBrush themabronnen.

WinUI bevat een verzameling resources voor penseelthema's die het thema van de app respecteren en waar nodig terugvallen op effen kleuren. Als u een specifiek oppervlak wilt verven, past u een van de thema-bronnen toe op elementachtergronden, net zoals u een andere kwast-bron zou toepassen.

<Grid Background="{ThemeResource AcrylicInAppFillColorDefaultBrush}">

Opmerking

U kunt deze resources weergeven in het AcrylicBrush-themaresourcebestand in de GitHub-opslagplaats microsoft-ui-xaml.

Acrylkwast op maat

U kunt ervoor kiezen om een kleurtint toe te voegen aan het acryl van uw app om de huisstijl weer te geven of visuele balans te bieden met andere elementen op de pagina. Als u kleur wilt weergeven in plaats van grijswaarden, moet u uw eigen acrylpennen definiƫren met behulp van de volgende eigenschappen.

  • TintColor: de overlay-laag voor kleur/tint.
  • TintOpacity: de dekking van de tintlaag.
  • TintLuminosityOpacity: bepaalt de hoeveelheid verzadiging die is toegestaan via het acryl oppervlak vanuit de achtergrond.
  • FallbackColor: de effen kleur die acryl vervangt in de batterijbesparing. Voor achtergrondacryl vervangt de terugvalkleur ook acryl wanneer uw app zich niet in het actieve bureaubladvenster bevindt.

Lichtthema acrylstalen

Donker thema acrylstalen

Helderheidsdoorzichtigheid vergeleken met tintdoorzichtigheid

Als u een acrylborstel wilt toevoegen, definieert u de drie bronnen voor donkere, lichte en hoog contrastthema's. In hoog contrast raden we u aan om een SolidColorBrush te gebruiken met hetzelfde x:Key als de donkere/lichte AcrylBrush.

Opmerking

Als u geen waarde opgeeft TintLuminosityOpacity , wordt de waarde automatisch aangepast op basis van uw TintColor en 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>

In het volgende voorbeeld ziet u hoe u een AcrylBrush declareert in code.

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;