FrameworkElement.VerticalAlignment プロパティ

定義

パネルや項目コントロールなどの親オブジェクトで構成されている場合に FrameworkElement に適用される垂直方向の配置特性を取得または設定します。

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

void VerticalAlignment(VerticalAlignment value);
public VerticalAlignment VerticalAlignment { get; set; }
var verticalAlignment = frameworkElement.verticalAlignment;
frameworkElement.verticalAlignment = verticalAlignment;
Public Property VerticalAlignment As VerticalAlignment
<frameworkElement VerticalAlignment="verticalAlignmentMemberName"/>

プロパティ値

列挙体の値としての垂直方向の配置設定。 既定値は Stretch です

この例では、値 CenterHorizontalAlignment および 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 派生クラス、または発表者) によって解釈されます。 子要素に配置プロパティを設定しても、何も起こる保証はありません。動作は、レイアウト構成と関係する親要素によって異なります。

Height プロパティと Width プロパティをオブジェクトに対して明示的に設定または計算する場合、これらの測定値は一般的なレイアウト ロジックにとってより重要であり、VerticalAlignment を Stretch に設定した場合の効果を取り消すことができます。 レイアウト制約プロパティ ( MaxHeight など) は、 Stretch レイアウトの状況のレイアウトサイズの最大値または最小サイズにも影響します。 ストレッチ は既定値であるため、明示的な測定がない場合にアダプティブ レイアウト手法を使用する方が簡単です。 ただし、[高さ][幅] または [クリッピング] がある場合、レイアウトは、値が VerticalAlignment の場合は Top、通常は HorizontalAlignment の場合は Left (右から左のカルチャ情報の場合は Right、または FlowDirection の明示的な値) の場合と同様に機能します。 詳しくは、「配置、余白、およびパディング」をご覧ください。

Canvas は絶対配置に基づいているため、レイアウトの作成時に VerticalAlignment は使用されません。 一般に、VerticalAlignment の値は、1 つ以上の FrameworkElement オブジェクトを子コンテンツとして持つことが可能なオブジェクトによって異なる方法で扱われる可能性があります。 このような親オブジェクトはそれぞれ、独自のレイアウト ロジックを持つことができます。

各 XAML UI 要素は、暗黙的な スタイルのスタイル セッターに基づいて、このプロパティの適用方法が異なる場合があります。 各 UI 要素の VerticalAlignment の明らかな "既定値" は異なる場合があります。 たとえば、 Button コントロールは値 Center で始まります。 UI 要素がコントロールの場合、VerticalAlignment 値もコントロールのビジュアル テンプレートに影響する可能性があります。

コンテンツ コントロールでは、多くの場合、コントロール テンプレートは {TemplateBinding} マークアップ拡張式を 使用して VerticalContentAlignment プロパティを、発表者やコンテンツ領域として使用される要素など、テンプレート内の一部の要素の VerticalAlignment プロパティにバインドします。

適用対象

こちらもご覧ください