Share via

UIElement.Opacity Property


Gets or sets the opacity factor applied to the entire UIElement when it is rendered in the user interface (UI). This is a dependency property.

 property double Opacity { double get(); void set(double value); };
[System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)]
public double Opacity { get; set; }
[<System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)>]
member this.Opacity : double with get, set
Public Property Opacity As Double

Property Value

The opacity factor. Default opacity is 1.0. Expected values are between 0.0 and 1.0.



The 1.0 default value is the default provided by the initial metadata of this dependency property on the UIElement class. Other derived classes may potentially change this default value by overriding the metadata from within their class constructor.

The value of Opacity won't be applied to actual layout unless the element is also visible (IsVisible is true).

Opacity is applied from parent elements on down the element tree to child elements, but the visible effects of the nested opacity settings aren't indicated in the property value of individual child elements. For instance, if a list has a 50% (0.5) opacity and one of its list items has its own opacity set to 20% (0.2), the net visible opacity for that list item will be rendered as if it were 10% (0.1), but the property value of the list item Opacity property would still be 0.2 when queried.

Even if the declared or evaluated opacity is 0, an element still participates in input events and commands, and is potentially focusable. This aspect can be useful, for instance you can use an opacity-zero object (such as a shape) for masking underlying objects with transparent elements. The opacity-zero object can then handle all the input event processing for an underlying area. However, the Background or Fill of the object or shape should be set to a value, even if it is Transparent, otherwise hit testing is not enabled, and no events are received.

Dependency Property Information

Identifier field OpacityProperty
Metadata properties set to true None

Applies to

See also