Partager via


Pinceaux de couleur unie

Parcourez l’exemple. Parcourir l'exemple

La classe .NET Multi-platform App UI (.NET MAUI) SolidColorBrush dérive de la classe Brush et est utilisée pour peindre une zone avec une couleur unie. Il existe diverses approches permettant de spécifier la couleur d’un SolidColorBrush. Par exemple, vous pouvez spécifier sa couleur avec une valeur Color ou avec l’un des objets SolidColorBrush prédéfinis fournis par la classe Brush.

La classe SolidColorBrush définit la propriété Color, de type Color, qui représente la couleur du pinceau. Cette propriété est la ContentProperty de la classe SolidColorBrush, c’est pourquoi elle n’a pas besoin d’être explicitement définie à partir de XAML. De plus, cette propriété s’appuie sur un objet BindableProperty, ce qui signifie qu’elle peut être la cible de liaisons de données et mise en forme avec un style.

La classe SolidColorBrush a également une méthode IsEmpty qui retourne une valeur bool indiquant si le pinceau a été affecté à une couleur.

Créer un SolidColorBrush

Il existe trois techniques principales pour créer un SolidColorBrush. Vous pouvez créer un SolidColorBrush à partir d’une Color, utiliser un pinceau prédéfini ou créer un SolidColorBrush à l’aide de la notation hexadécimale.

Utiliser une couleur prédéfinie

.NET MAUI inclut un convertisseur de type qui crée un SolidColorBrush à partir d’une valeur Color. En XAML, cela permet de créer un SolidColorBrush à partir d’une valeur Color prédéfinie :

<Frame Background="DarkBlue"
       BorderColor="LightGray"
       HasShadow="True"
       CornerRadius="12"
       HeightRequest="120"
       WidthRequest="120" />

Dans cet exemple, l’arrière-plan du Frame est peint avec un SolidColorBrush bleu foncé :

Capture d’écran d’un cadre peint avec une couleur prédéfinie.

La valeur Color peut également être spécifiée avec la syntaxe de balises de propriété :

<Frame BorderColor="LightGray"
       HasShadow="True"
       CornerRadius="12"
       HeightRequest="120"
       WidthRequest="120">
       <Frame.Background>
           <SolidColorBrush Color="DarkBlue" />
       </Frame.Background>
</Frame>

Dans cet exemple, l’arrière-plan du Frame est peint avec un SolidColorBrush dont la couleur est spécifiée en définissant la propriété SolidColorBrush.Color.

Utiliser un pinceau prédéfini

La classe Brush définit un ensemble d’objets SolidColorBrush couramment utilisés. L’exemple suivant utilise l’un de ces objets SolidColorBrush prédéfinis :

<Frame Background="{x:Static Brush.Indigo}"
       BorderColor="LightGray"
       HasShadow="True"
       CornerRadius="12"
       HeightRequest="120"
       WidthRequest="120" />       

Le code C# équivalent est :

Frame frame = new Frame
{
    Background = Brush.Indigo,
    BorderColor = Colors.LightGray,
    // ...
};

Dans cet exemple, l’arrière-plan du Frame est peint avec un SolidColorBrush bleu indigo :

Capture d’écran d’un cadre peint avec un SolidColorBrush prédéfini.

Pour obtenir la liste des objets SolidColorBrush prédéfinis fournis par la classe Brush, consultez Pinceaux de couleur unie.

Utiliser la notation hexadécimale

Les objets SolidColorBrush peuvent également être créés à l’aide de la notation hexadécimale. Avec cette approche, une couleur est spécifiée en termes de quantité de rouge, de vert et de bleu à combiner en une seule couleur. Le principal format pour spécifier une couleur à l’aide de la notation hexadécimale est #rrggbb, où :

  • rr est un nombre hexadécimal à deux chiffres spécifiant la quantité relative de rouge.
  • gg est un nombre hexadécimal à deux chiffres spécifiant la quantité relative de vert.
  • bb est un nombre hexadécimal à deux chiffres spécifiant la quantité relative de bleu.

De plus, une couleur peut être spécifiée comme #aarrggbb, où aa spécifie la valeur alpha, ou la transparence, de la couleur. Cette approche vous permet de créer des couleurs qui sont partiellement transparentes.

L’exemple suivant définit la valeur de couleur d’un SolidColorBrush à l’aide de la notation hexadécimale :

<Frame Background="#FF9988"
       BorderColor="LightGray"
       HasShadow="True"
       CornerRadius="12"
       HeightRequest="120"
       WidthRequest="120" />

Dans cet exemple, l’arrière-plan du Frame est peint avec un SolidColorBrush couleur saumon :

Capture d’écran d’un cadre peint avec un SolidColorBrush créé avec la notation hexadécimale.

Pour d’autres façons de décrire la couleur, consultez Couleurs.

Pinceaux de couleur unie

Pour des raisons pratiques, la classe Brush fournit un ensemble d’objets SolidColorBrush couramment utilisés, tels que AliceBlue et YellowGreen. L’image suivante montre la couleur de chaque pinceau prédéfini, son nom et sa valeur hexadécimale :

Tableau de couleurs comprenant un échantillon de couleur, un nom de couleur et une valeur hexadécimale.