Jak malować obszar pędzlem systemowym

Klasa SystemColors zapewnia dostęp do pędzli systemowych i kolorów, takich jak ControlBrush, ControlBrushKeyi DesktopBrush. Szczotka systemowa SolidColorBrush to obiekt, który maluje obszar o określonym kolorze systemu. Szczotka systemowa zawsze tworzy solidne wypełnienie; nie można jej użyć do utworzenia gradientu.

Można użyć pędzli systemowych jako zasobu statycznego lub dynamicznego. Użyj zasobu dynamicznego, jeśli chcesz, aby szczotka aktualizowała się automatycznie, jeśli użytkownik zmieni szczotkę systemową podczas uruchamiania aplikacji; w przeciwnym razie użyj zasobu statycznego. Klasa SystemColors zawiera różne właściwości statyczne, które są zgodne z ścisłą konwencją nazewnictwa:

  • *<SystemColor>*Brush

    Pobiera statyczne odwołanie do SolidColorBrush określonego koloru systemu.

  • *<SystemColor>*BrushKey

    Pobiera dynamiczne odwołanie do SolidColorBrush określonego koloru systemu.

  • *<SystemColor>*Color

    Pobiera statyczne odwołanie do Color struktury określonego koloru systemu.

  • *<SystemColor>*ColorKey

    Pobiera dynamiczne odwołanie do Color struktury określonego koloru systemu.

Kolor systemu to Color struktura, która może służyć do konfigurowania pędzla. Na przykład można utworzyć gradient przy użyciu kolorów systemowych, ustawiając Color właściwości LinearGradientBrush gradientu obiektu na kolory systemowe. Aby zapoznać się z przykładem, zobacz Use System Colors in a Gradient (Używanie kolorów systemowych w gradientzie).

Przykład

W poniższym przykładzie użyto dynamicznego odwołania do pędzla systemowego, aby ustawić tło przycisku.

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
  xmlns:x="http://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>

W następnym przykładzie użyto odwołania do statycznego pędzla systemowego, aby ustawić tło przycisku.

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
  xmlns:x="http://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>

Aby zapoznać się z przykładem użycia koloru systemu w gradientzie, zobacz Use System Colors in a Gradient (Używanie kolorów systemowych w gradientzie).

Zobacz też