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 です。

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

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

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

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

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

適用対象

こちらもご覧ください