Control.Background Property

Definition

Gets or sets a brush that describes the background of a control.

[System.ComponentModel.Bindable(true)]
public System.Windows.Media.Brush Background { get; set; }

Property Value

The brush that is used to fill the background of the control. The default is Transparent.

Attributes

Examples

The following example shows how to set the background property of a control.

<Button Name="btn" Background="Red" 
        Click="ChangeBackground">
  Background
</Button>
void ChangeBackground(object sender, RoutedEventArgs e)
{
    if (btn.Background == Brushes.Red)
    {
        btn.Background = new LinearGradientBrush(Colors.LightBlue, Colors.SlateBlue, 90);
        btn.Content = "Control background changes from red to a blue gradient.";
    }
    else
    {
        btn.Background = Brushes.Red;
        btn.Content = "Background";
    }
}

The following example shows a template that enables a trigger to change the background of a button when it is pressed.

<Button FontSize="16" FontWeight="Bold">Click the Background
  <Button.Template>
    <ControlTemplate TargetType="{x:Type Button}">
      <Border Background="{TemplateBinding Background}">
         <ContentPresenter/>
      </Border>
    </ControlTemplate>
  </Button.Template>

  <Button.Style>
    <Style TargetType="{x:Type Button}">
      <Setter Property="Background" Value="Blue"/>
      <Style.Triggers>
        <Trigger Property="IsPressed" Value="true">
          <Setter Property="Background" Value="Red"/>
        </Trigger>
      </Style.Triggers>
    </Style>
  </Button.Style>
</Button>

Remarks

The Background property applies only to the resting state of a control. The default style of the control specifies its appearance when the state of the control changes. For example, if you set the Background property on a Button, the button has that value only when it is not pressed or disabled. If you want to create a control that has a more advanced customization of the background, you must define the control's style.

This property only affects a control whose template uses the Background property as a parameter. On other controls, this property has no impact.

Dependency Property Information

Item Value
Identifier field BackgroundProperty
Metadata properties set to true AffectsRender, SubPropertiesDoNotAffectRender

Applies to

Product Versions
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9