FrameworkElement.HorizontalAlignment 属性

定义

获取或设置在布局父级(如面板或项控件)中组合时应用于 FrameworkElement 的水平对齐特征。

public:
 property HorizontalAlignment HorizontalAlignment { HorizontalAlignment get(); void set(HorizontalAlignment value); };
HorizontalAlignment HorizontalAlignment();

void HorizontalAlignment(HorizontalAlignment value);
public HorizontalAlignment HorizontalAlignment { get; set; }
var horizontalAlignment = frameworkElement.horizontalAlignment;
frameworkElement.horizontalAlignment = horizontalAlignment;
Public Property HorizontalAlignment As HorizontalAlignment
<frameworkElement HorizontalAlignment="horizontalAlignmentMemberName"/>
 

属性值

水平对齐设置,它是一个枚举值。 默认值为 Stretch

示例

在此示例中,值 Center 分配给 HorizontalAlignment 和 VerticalAlignment,以将 TextBlock 元素置于 Grid 单元格的中心。

<Grid x:Name="LayoutRoot" Background="Coral" Width="300" Height="100">
    <Grid.ColumnDefinitions>
        <ColumnDefinition />
        <ColumnDefinition />
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition />
        <RowDefinition />
    </Grid.RowDefinitions>
    <TextBlock Grid.Column="0" Grid.Row="0" Text="First Name" 
        HorizontalAlignment="Center" VerticalAlignment="Center" />
    <TextBlock Grid.Column="0" Grid.Row="1" Text="Last Name" 
        HorizontalAlignment="Center" VerticalAlignment="Center" />
    <TextBox Grid.Column="1" Grid.Row="0" />
    <TextBox Grid.Column="1" Grid.Row="1" />

</Grid>

注解

对齐属性旨在提示自适应布局容器所需的布局。 它们通常设置在 FrameworkElement 子级上,并由另一个 FrameworkElement 容器父级解释 (通常是 ContentControl 派生类或 Panel 派生类,或者可能是演示者) 。 在子元素上设置对齐属性不能保证发生任何操作;行为取决于布局组合和所涉及的父元素。

在对象上显式设置或计算 HeightWidth 属性时,这些度量值对于典型的布局逻辑更为重要,并且可以取消将 HorizontalAlignment 设置为 Stretch 的效果。 (MaxWidth) 等布局约束属性也会影响拉伸布局情况的最大或最小布局大小。 拉伸 是默认的,因此在没有显式度量的情况下,可以更轻松地使用自适应布局技术。 但是,如果存在“高度”和“宽度”或“剪裁”,则布局将像“垂直对齐”的值一样,通常为“向左”表示 HorizontalAlignment (向右表示从右到左区域性信息,或者使用显式 FlowDirection 值) 。 有关详细信息,请参阅对齐、边距和填充

Canvas 在撰写布局时不使用 HorizontalAlignment,因为 Canvas 基于绝对定位。 通常,任何能够将一个或多个 FrameworkElement 对象作为子内容的对象都可能会对 HorizontalAlignment 的值进行不同的处理。 每个此类父对象都可以有自己的布局逻辑。

每个 XAML UI 元素可能会根据隐式 样式的样式 设置器以不同的方式应用此属性。 每个 UI 元素中 HorizontalAlignment 的明显“默认值”可能不同。 例如, Button 控件以值 Left 开头。 如果 UI 元素是控件,HorizontalAlignment 值也可能影响控件的可视模板。

在内容控件中,控件模板通常使用 {TemplateBinding} 标记扩展 表达式将 HorizontalContentAlignment 属性绑定到其模板中某个元素(例如演示者或用作内容区域的元素)上的 HorizontalAlignment 属性。

适用于

另请参阅