Jak využít vlastnost BackgroundSizing v UWP

WinUI XAML

4 years ago

Windows 10 17763 SDK přidalo zajímavou vlastnost BackgroundSizing pro všechny ovladací prvky s pozadím (Background). Podívejme se co tato vlastnost umí. BackgroundSizing je užitečná pro ovladací prvky s průhledným nebo poloprůhledným ohraničením (Border), protože určuje, zda pozadí prvku přesahuje až pod ohraničení, či ne. Ukážeme si to na jednoduchém příkladu:

Pokud explicitně nepřidáme atribut BackgroundSizing, je použita výchozí hodnota - InnerBorderEdge. To znamená, že pozadí prvku končí na začátku ohraničení a nepokračuje pod ním:

InnerBorderEdge BackgroundSizing example - background does not extend under the border

InnerBorderEdge BackgroundSizing

Nyní změňme hodnotu BackgroundSizing na OuterBorderEdge:

V tomto případě obrázkové pozadí (ImageBrush) až pod ohraničení prvku a díky tomu, že je BorderBrush poloprůhledný, vznikne vytvoří dohromady pěkný efekt rámečku:

OuterBorderBrush BackgroundSizing - background extends below the border

OuterBorderBrush BackgroundSizing

Vlasntost BackgroundSizing je k dispozici ve Windows 10 build 17763 a novějších, ale jakmile vyjde WinUI 3.0, bude dostupná ve všech podporovaných verzích Windows 10!

Zdrojový kód

Ukázkový zdrojový kód k tomuto článku je k dispozici na mém GitHubu.