FrameworkElement.HorizontalAlignment Propriété

Définition

Obtient ou définit les caractéristiques d’alignement horizontal qui sont appliquées à un FrameworkElement lorsqu’il est composé dans un parent de disposition, tel qu’un contrôle de panneau ou d’éléments.

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"/>

Valeur de propriété

Un paramètre d’alignement horizontal, sous forme de valeur de l’énumération. La valeur par défaut est Stretch.

Exemples

Dans cet exemple, la valeur Center est affectée à HorizontalAlignment et VerticalAlignment, pour positionner les éléments TextBlock au centre des cellules 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>

Remarques

Les propriétés d’alignement sont destinées à indiquer la disposition souhaitée à un conteneur de disposition adaptative. Ils sont généralement définis sur des enfants FrameworkElement et interprétés par un autre parent de conteneur FrameworkElement (généralement une classe dérivée de ContentControl ou une classe dérivée de Panel , ou peut-être un présentateur). La définition des propriétés d’alignement sur un élément enfant ne garantit pas que quoi que ce soit se passe . le comportement dépend de la composition de la disposition et des éléments parent impliqués.

Lorsque les propriétés Height et Width sont explicitement définies ou calculées sur un objet, ces mesures sont plus importantes pour la logique de disposition classique et peuvent annuler les effets de la définition de la valeur HorizontalAlignmentStretch. Les propriétés de contrainte de disposition (telles que MaxWidth) affectent également la taille de disposition maximale ou minimale d’une Stretch situation de disposition. Stretch est la valeur par défaut afin qu’il soit plus facile d’utiliser des techniques de disposition adaptatives dans les cas où il n’y a pas de mesure explicite. Toutefois, s’il existe Une hauteur et une largeur ou un découpage, la disposition agit comme si la valeur était Top pour VerticalAlignment, généralement Left pour HorizontalAlignment ( pour lesRight informations de culture de droite à gauche ou les valeurs FlowDirection explicites). Pour plus d’informations, voir Alignement, marge et espacement.

Le canevas n’est pas utilisé HorizontalAlignment lors de la composition de la disposition, car Canvas est basé sur un positionnement absolu. En général, la valeur de HorizontalAlignment est potentiellement traitée différemment par tout objet capable d’avoir un ou plusieurs objets FrameworkElement en tant que contenu enfant. Chaque objet parent peut avoir sa propre logique de disposition.

Chaque élément d’interface utilisateur XAML peut appliquer cette propriété différemment en fonction des setters style pour le style implicite. La « valeur par défaut » apparente pour HorizontalAlignment dans chaque élément d’interface utilisateur peut être différente. Par exemple, un contrôle Button commence par la valeur Left. Si l’élément d’interface utilisateur est un contrôle, la HorizontalAlignment valeur peut également affecter le modèle visuel du contrôle.

Dans les contrôles de contenu, le modèle de contrôle utilise souvent des expressions d’extension de balisage {TemplateBinding} pour lier la propriété HorizontalContentAlignment à une propriété sur un HorizontalAlignment élément de son modèle, comme le présentateur ou l’élément utilisé comme zone de contenu.

S’applique à

Voir aussi