This documentation is archived and is not being maintained.

FrameworkElement.HorizontalAlignment Property

Gets or sets the horizontal alignment characteristics applied to this element when it is composed within a parent element, such as a panel or items control.

Namespace:  System.Windows
Assembly:  PresentationFramework (in PresentationFramework.dll)

public HorizontalAlignment HorizontalAlignment { get; set; }
<object HorizontalAlignment="HorizontalAlignment" .../>

Property Value

Type: System.Windows.HorizontalAlignment
A horizontal alignment setting, as a value of the enumeration. The default is Stretch.

When Height and Width properties are explicitly set on an element, these measurements take higher precedent during layout and will cancel the typical effects of setting HorizontalAlignment to Stretch.

HorizontalAlignment is the Microsoft .NET property accessor for what is in reality a dependency property. This particular dependency property quite frequently has its apparent "default" value set differently in subclassed elements, particularly controls. This generally occurs in one of two ways: the dependency property is re-registered to a particular subclass, but with different metadata for setting its defaults; or there is a default style being applied that sets that dependency property value differently. For example, the apparent "default" of HorizontalAlignment for a Label control will be Left, even though Label inherits HorizontalAlignment direct from FrameworkElement. This is because that value was reset within the default style of Label, within the style's control template.

Canvas does not use HorizontalAlignment when composing layout, because Canvas is based on absolute positioning.

When inherited by Label or derived classes, Label redefines the default value of this dependency property to be Left.

.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.