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입니다.

예제

이 예제에서는 Value 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 파생 클래스 또는 발표자)에 의해 해석됩니다. 자식 요소에 맞춤 속성을 설정해도 아무 일도 발생하지 않습니다. 동작은 레이아웃 컴퍼지션 및 관련된 부모 요소에 따라 달라집니다.

HeightWidth 속성이 개체에서 명시적으로 설정되거나 계산되는 경우 이러한 측정값은 일반적인 레이아웃 논리에 더 중요하며 HorizontalAlignment를 Stretch로 설정하는 효과를 취소할 수 있습니다. 레이아웃 제약 조건 속성(예: MaxWidth)도 스트레치 레이아웃 상황의 최대 또는 최소 레이아웃 크기에 영향을 줍니다. Stretch 는 명시적 측정이 없는 경우 적응형 레이아웃 기술을 더 쉽게 사용할 수 있도록 기본값입니다. 그러나 높이너비 또는 클리핑이 있는 경우 레이아웃은 값이 VerticalAlignment경우 Top인 것처럼 작동하며 일반적으로 HorizontalAlignment의 경우 왼쪽입니다(오른쪽에서 왼쪽 문화권 정보 또는 명시적 FlowDirection 값의 경우 오른쪽). 자세한 내용은 맞춤, 여백 및 안쪽 여백을 참조하세요.

Canvas 는 절대 위치 지정을 기반으로 하므로 레이아웃을 작성할 때 HorizontalAlignment 를 사용하지 않습니다. 일반적으로 HorizontalAlignment 값은 하나 이상의 FrameworkElement 개체를 자식 콘텐츠로 사용할 수 있는 개체에 의해 잠재적으로 다르게 처리됩니다. 이러한 각 부모 개체에는 자체 레이아웃 논리가 있을 수 있습니다.

각 XAML UI 요소는 암시적 스타일에 대한 Style setter에 따라 이 속성을 다르게 적용할 수 있습니다. 각 UI 요소의 HorizontalAlignment에 대한 명백한 "기본값"은 다를 수 있습니다. 예를 들어 Button 컨트롤은 왼쪽 값으로 시작합니다. UI 요소가 컨트롤인 경우 HorizontalAlignment 값은 컨트롤의 시각적 템플릿에도 영향을 줄 수 있습니다.

콘텐츠 컨트롤에서 컨트롤 템플릿은 종종 {TemplateBinding} 태그 확장 식을 사용하여 발표자 또는 콘텐츠 영역으로 사용되는 요소와 같은 템플릿 내의 일부 요소에서 HorizontalContentAlignment 속성을 HorizontalAlignment 속성에 바인딩합니다.

적용 대상

추가 정보