Comment : peindre une zone avec un pinceau système
La classe SystemColors fournit l'accès aux pinceaux et couleurs système, tels que ControlBrush, ControlBrushKey et DesktopBrush. Un pinceau système est un objet SolidColorBrush qui peint une zone avec la couleur système spécifiée. Un pinceau système produit toujours un remplissage solide ; il ne peut pas être utilisé pour créer un gradient.
Vous pouvez utiliser des pinceaux système comme une ressource statique ou dynamique. Utilisez une ressource dynamique si vous souhaitez que le pinceau se mette à jour automatiquement si l'utilisateur le modifie pendant l'exécution de l'application ; sinon, utilisez une ressource statique. La classe SystemColors contient diverses propriétés statiques qui suivent une stricte convention d'affectation de noms :
<SystemColor> Brush
Récupère une référence statique à un SolidColorBrush de la couleur système spécifiée.
<SystemColor> BrushKey
Récupère une référence dynamique à un SolidColorBrush de la couleur système spécifiée.
<SystemColor> Color
Récupère une référence statique à une structure Color de la couleur système spécifiée.
<SystemColor> ColorKey
Récupère une référence dynamique à la structure Color de la couleur système spécifiée.
Une couleur système est une structure Color pouvant être utilisée pour configurer un pinceau. Par exemple, vous pouvez créer un gradient à l'aide de couleurs système en définissant les propriétés Color des points de dégradé d'un objet LinearGradientBrush avec les couleurs système. Pour obtenir un exemple, consultez Comment : utiliser des couleurs système dans un dégradé.
Exemple
L'exemple suivant utilise une référence dynamique du pinceau système pour définir l'arrière-plan d'un bouton.
<Page xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
WindowTitle="SystemColors Example" Background="White">
<StackPanel Margin="20">
<!-- Uses a dynamic resource to set the
background of a button.
If the desktop brush changes while this application
is running, this button will be updated. -->
<Button
Background="{DynamicResource {x:Static SystemColors.DesktopBrushKey}}"
Content="Hello, World!" />
</StackPanel>
</Page>
L'exemple suivant utilise une référence statique du pinceau système pour définir l'arrière-plan d'un bouton.
<Page xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
WindowTitle="SystemColors Example" Background="White">
<StackPanel Margin="20">
<!-- Uses a static brush to set the
background of a button.
If the desktop brush changes while this application
is running, this button will not be updated until
the page is loaded again. -->
<Button
Background="{x:Static SystemColors.DesktopBrush}"
Content="Hello, World!" />
</StackPanel>
</Page>
Pour obtenir un exemple montrant comment utiliser une couleur système dans un gradient, consultez Comment : utiliser des couleurs système dans un dégradé.
Voir aussi
Tâches
Comment : utiliser des couleurs système dans un dégradé
Concepts
Vue d'ensemble de la peinture avec des couleurs unies ou des dégradés