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. This is a dependency property.

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

public HorizontalAlignment HorizontalAlignment { get; set; }
/** @property */
public HorizontalAlignment get_HorizontalAlignment ()

/** @property */
public void set_HorizontalAlignment (HorizontalAlignment value)

public function get HorizontalAlignment () : HorizontalAlignment

public function set HorizontalAlignment (value : HorizontalAlignment)

<object HorizontalAlignment="HorizontalAlignment" .../>

Property Value

A horizontal alignment setting, as a value of the enumeration. The default is Stretch.

Identifier field


Metadata properties set to true


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.

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0