Použití systémových prostředků (WPF .NET)
Tento příklad ukazuje použití systémově definovaných prostředků. Systémové prostředky poskytuje WPF a umožňuje přístup k prostředkům operačního systému, jako jsou písma, barvy a ikony. Systémové prostředky zpřístupňují několik systémově definovaných hodnot jako prostředky i vlastnosti, které vám pomůžou vytvářet vizuály, které jsou konzistentní s Windows.
Písma
SystemFonts Pomocí třídy můžete odkazovat na písma používaná operačním systémem. Tato třída obsahuje hodnoty systémových písem jako statické vlastnosti a vlastnosti, které odkazují na klíče prostředků, které lze použít k dynamickému přístupu k těmto hodnotám za běhu. Je to například CaptionFontFamily SystemFonts hodnota a CaptionFontFamilyKey je to odpovídající klíč prostředku.
Následující příklad ukazuje, jak přistupovat k statickým hodnotám a používat je SystemFonts jako statické hodnoty pro styl nebo přizpůsobení bloku textu:
<TextBlock FontSize="{x:Static SystemFonts.SmallCaptionFontSize}"
FontWeight="{x:Static SystemFonts.SmallCaptionFontWeight}"
FontFamily="{x:Static SystemFonts.SmallCaptionFontFamily}"
Text="Small Caption Font">
</TextBlock>
Pokud chcete použít hodnoty SystemFonts v kódu, nemusíte používat statickou hodnotu ani dynamický odkaz na prostředky. Místo toho použijte neklíčové vlastnosti SystemFonts třídy. I když se vlastnosti, které nejsou klíči, zřejmě definují jako statické vlastnosti, chování WPF za běhu hostované systémem znovu zhodnotí vlastnosti v reálném čase a bude správně zohledňovat změny systémových hodnot řízené uživatelem. Následující příklad ukazuje, jak zadat nastavení písma tlačítka:
var myButton = new Button()
{
Content = "SystemFonts",
Background = SystemColors.ControlDarkDarkBrush,
FontSize = SystemFonts.IconFontSize,
FontWeight = SystemFonts.MessageFontWeight,
FontFamily = SystemFonts.CaptionFontFamily
};
mainStackPanel.Children.Add(myButton);
Dim myButton = New Button() With
{
.Content = "SystemFonts",
.Background = SystemColors.ControlDarkDarkBrush,
.FontSize = SystemFonts.IconFontSize,
.FontWeight = SystemFonts.MessageFontWeight,
.FontFamily = SystemFonts.CaptionFontFamily
}
mainStackPanel.Children.Add(myButton)
Dynamická písma v XAML
Systémové metriky písma je možné použít jako statické nebo dynamické prostředky. Pokud chcete, aby se metrika písma automaticky aktualizovala při spuštění aplikace, použijte dynamický prostředek. v opačném případě použijte statický prostředek.
Poznámka:
Dynamické prostředky mají klíčové slovo Key
připojené k názvu vlastnosti.
Následující příklad ukazuje, jak získat přístup k dynamickým prostředkům systémového písma nebo ho použít k úpravě stylu nebo přizpůsobení bloku textu:
<TextBlock FontSize="{DynamicResource {x:Static SystemFonts.SmallCaptionFontSize}}"
FontWeight="{DynamicResource {x:Static SystemFonts.SmallCaptionFontWeight}}"
FontFamily="{DynamicResource {x:Static SystemFonts.SmallCaptionFontFamily}}"
Text="Small Caption Font">
</TextBlock>
Parametry
SystemParameters Pomocí třídy můžete odkazovat na vlastnosti na úrovni systému, jako je například velikost primárního zobrazení. Tato třída obsahuje vlastnosti hodnoty systémového parametru a klíče prostředků, které se sváže s hodnotami. Jedná se například FullPrimaryScreenHeight o SystemParameters hodnotu vlastnosti a FullPrimaryScreenHeightKey je to odpovídající klíč prostředku.
Následující příklad ukazuje, jak získat přístup ke statickým hodnotám SystemParameters stylu nebo přizpůsobení tlačítka a použít je. Tento příklad revizí velikost tlačítka použitím SystemParameters hodnot na tlačítko:
<Button FontSize="8"
Height="{x:Static SystemParameters.CaptionHeight}"
Width="{x:Static SystemParameters.IconGridWidth}"
Content="System Parameters">
</Button>
Pokud chcete použít hodnoty SystemParameters v kódu, nemusíte používat statické odkazy ani dynamické odkazy na prostředky. Místo toho použijte hodnoty SystemParameters třídy. I když jsou vlastnosti bez klíče zřejmě definovány jako statické vlastnosti, chování WPF za běhu hostované systémem znovu zhodnotí vlastnosti v reálném čase a bude správně zohledňovat změny systémových hodnot řízené uživatelem. Následující příklad ukazuje, jak nastavit šířku a výšku tlačítka pomocí SystemParameters hodnot:
var myButton = new Button()
{
Content = "SystemParameters",
FontSize = 8,
Background = SystemColors.ControlDarkDarkBrush,
Height = SystemParameters.CaptionHeight,
Width = SystemParameters.CaptionWidth,
};
mainStackPanel.Children.Add(myButton);
Dim myButton = New Button() With
{
.Content = "SystemParameters",
.FontSize = 8,
.Background = SystemColors.ControlDarkDarkBrush,
.Height = SystemParameters.CaptionHeight,
.Width = SystemParameters.CaptionWidth
}
mainStackPanel.Children.Add(myButton)
Dynamické parametry v XAML
Metriky systémových parametrů je možné použít jako statické nebo dynamické prostředky. Dynamický prostředek použijte, pokud chcete, aby se metrika parametru automaticky aktualizovala při spuštění aplikace; v opačném případě použijte statický prostředek.
Poznámka:
Dynamické prostředky mají klíčové slovo Key
připojené k názvu vlastnosti.
Následující příklad ukazuje, jak přistupovat k dynamickým prostředkům systémového parametru a používat je k přizpůsobení nebo stylu tlačítka. Tento příklad XAML vytvoří velikost tlačítka přiřazením SystemParameters hodnot k šířce a výšce tlačítka.
<Button FontSize="8"
Height="{DynamicResource {x:Static SystemParameters.CaptionHeightKey}}"
Width="{DynamicResource {x:Static SystemParameters.IconGridWidthKey}}"
Content="System Parameters">
</Button>
Viz také
.NET Desktop feedback