FrameworkElement.HorizontalAlignment Propiedad

Definición

Obtiene o establece las características de alineación horizontal que se aplican a un FrameworkElement cuando se compone en un elemento primario de diseño, como un panel o un control de elementos.

C#
public HorizontalAlignment HorizontalAlignment { get; set; }
XAML
<frameworkElement HorizontalAlignment="horizontalAlignmentMemberName"/>
 

Valor de propiedad

Un valor de alineación horizontal, como un valor de la enumeración. El valor predeterminado es Stretch.

Ejemplos

En este ejemplo, el valor Center se asigna a HorizontalAlignment y VerticalAlignment, para colocar los elementos TextBlock en el centro de las celdas grid .

XAML
<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>

Comentarios

Las propiedades de alineación están diseñadas para sugerir el diseño deseado a un contenedor de diseño adaptable. Normalmente se establecen en los elementos secundarios FrameworkElement y se interpretan mediante otro elemento primario del contenedor FrameworkElement (normalmente una clase derivada contentControl o una clase derivada de Panel , o quizás un moderador). Establecer propiedades de alineación en un elemento secundario no garantiza que ocurra nada; el comportamiento depende de la composición del diseño y de los elementos primarios implicados.

Cuando las propiedades Height y Width se establecen o calculan explícitamente en un objeto, esas medidas son más importantes para la lógica de diseño típica y pueden cancelar los efectos de establecer HorizontalAlignment en Stretch. Las propiedades de restricción de diseño (como MaxWidth) también afectan al tamaño de diseño máximo o mínimo para una situación de diseño stretch . Stretch es el valor predeterminado para que sea más fácil usar técnicas de diseño adaptable en los casos en los que no hay ninguna medida explícita. Pero si hay height y width o clipping, el diseño actúa como si el valor es Top for VerticalAlignment, normalmente Left for HorizontalAlignment (Right for right-to-left culture info or explicit FlowDirection values). Para obtener más información, consulta alineación, margen y espaciado.

Canvas no usa HorizontalAlignment al componer el diseño, ya que Canvas se basa en el posicionamiento absoluto. En general, el valor de HorizontalAlignment se trata de forma diferente por cualquier objeto que sea capaz de tener uno o varios objetos FrameworkElement como contenido secundario. Cada objeto primario puede tener su propia lógica de diseño.

Cada elemento de interfaz de usuario XAML puede aplicar esta propiedad de forma diferente en función de los establecedores de estilo para el estilo implícito. El "valor predeterminado" aparente para HorizontalAlignment en cada elemento de la interfaz de usuario puede ser diferente. Por ejemplo, un control Button comienza con el valor Left. Si el elemento de la interfaz de usuario es un control, el valor HorizontalAlignment también podría afectar a la plantilla visual del control.

En los controles de contenido, la plantilla de control usa a menudo expresiones de extensión de marcado {TemplateBinding} para enlazar la propiedad HorizontalContentAlignment a una propiedad HorizontalAlignment en algún elemento de su plantilla, como el moderador o el elemento usado como área de contenido.

Se aplica a

Producto Versiones
WinRT Build 10240, Build 10586, Build 14383, Build 15063, Build 16299, Build 17134, Build 17763, Build 18362, Build 19041, Build 20348, Build 22000, Build 22621, Build 26100

Consulte también