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 分配给 HorizontalAlignmentVerticalAlignment,以将 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 属性时,这些度量值对于典型的布局逻辑更为重要,并且可以取消设置为 HorizontalAlignmentStretch 的效果。 布局约束属性 ((如 MaxWidth) )也会影响布局情况的最大或最小布局大小 StretchStretch 是默认值,以便在没有显式度量的情况下更轻松地使用自适应布局技术。 但是,如果存在 HeightWidth 或剪裁,则布局将充当 VerticalAlignment 的值Top,通常Left对于HorizontalAlignment从右到左的区域性信息 (Right或显式 FlowDirection 值) 。 有关详细信息,请参阅对齐、边距和填充

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

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

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

适用于

另请参阅