Show / Hide Table of Contents

Практическое руководство. Заливка области с помощью системной кисти

SystemColors Класс предоставляет доступ к системным кистям и цветам, такие как ControlBrush, ControlBrushKey, и DesktopBrush. Системная кисть — это SolidColorBrush объект, который закрашивает область с помощью указанного системного цвета. Системная кисть всегда дает сплошную заливку; ее нельзя использовать для создания градиентной заливки.

Системные кисти можно использовать как статический или динамический ресурс. Используйте динамический ресурс, если нужно автоматическое обновление кисти при изменении пользователем кисти во время выполнения приложения; в противном случае используйте статический ресурс. Класс SystemColors содержит разнообразные статические свойства, которые следуют строгому правилу именования:

  • <SystemColor> Brush

    Возвращает статическую ссылку на SolidColorBrush указанного системного цвета.

  • <SystemColor> BrushKey

    Возвращает динамическую ссылку SolidColorBrush указанного системного цвета.

  • <SystemColor> Color

    Возвращает статическую ссылку на Color структуру указанного системного цвета.

  • <SystemColor> ColorKey

    Возвращает динамическую ссылку Color структуру указанного системного цвета.

Системный цвет является Color структуры, который может использоваться для настройки кисти. Например, можно создать с помощью системных цветов, задав градиент Color свойства LinearGradientBrush градиента объекта с системными цветами. Например, см. в разделе использование системных цветов в градиенте.

Пример

В следующем примере используется динамическая ссылка на системную кисть для установки фона кнопки.

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

В следующем примере используется статическая ссылка на системную кисть для установки фона кнопки.

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

Пример, демонстрирующий использование системных цветов в градиенте, см. в разделе использование системных цветов в градиенте.

См. также

  • Использование системных цветов в градиенте
  • Общие сведения о закраске сплошным цветом и градиентом
Back to top Неофициальная документация по .NET на русском языке. Лицензия: CC-BY 4.0. Основано на документации по .NET с Microsoft Docs
Generated by DocFX