Condividi tramite


Procedura: disegnare un'area con un pennello di sistema

La classe SystemColors fornisce accesso a pennelli e colori di sistema, ad esempio ControlBrush, ControlBrushKey e DesktopBrush. Un pennello di sistema è un oggetto SolidColorBrush che consente di disegnare un’area con il colore di sistema specificato. Un pennello di sistema produce sempre un riempimento a tinta unita; non può essere utilizzato per creare una sfumatura.

È possibile utilizzare i pennelli di sistema come risorse statiche o come risorse dinamiche. Utilizzare una risorsa dinamica se si desidera aggiornare automaticamente il pennello nel caso in cui l’utente modifichi il pennello di sistema durante l'esecuzione dell'applicazione; in caso contrario utilizzare una risorsa statica. La classe SystemColors contiene numerose proprietà statiche che seguono una rigida convenzione di denominazione:

  • *<SystemColor>*Brush

    Ottiene un riferimento statico a un oggetto SolidColorBrush del colore di sistema specificato.

  • *<SystemColor>*BrushKey

    Ottiene un riferimento dinamico a un oggetto SolidColorBrush del colore di sistema specificato.

  • *<SystemColor>*Color

    Ottiene un riferimento statico a una struttura Color del colore di sistema specificato.

  • *<SystemColor>*ColorKey

    Ottiene un riferimento dinamico alla struttura Color del colore di sistema specificato.

Un colore di sistema è una struttura Color che può essere utilizzata per configurare un pennello. Ad esempio, è possibile creare una sfumatura tramite colori di sistema impostando le proprietà Color dei cursori sfumatura di un oggetto LinearGradientBrush con i colori di sistema. Per un esempio, vedere Procedura: utilizzare i colori di sistema in una sfumatura.

Esempio

Nell'esempio riportato di seguito viene utilizzato un riferimento dinamico ai pennelli di sistema per impostare lo sfondo di un pulsante.

<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>

Nell'esempio successivo viene utilizzato un riferimento statico ai pennelli di sistema per impostare lo sfondo di un pulsante.

<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>

Per un esempio in cui viene illustrato come utilizzare un colore di sistema in una sfumatura, vedere Procedura: utilizzare i colori di sistema in una sfumatura.

Vedere anche

Attività

Procedura: utilizzare i colori di sistema in una sfumatura

Concetti

Cenni sul disegno con colori a tinta unita e sfumature