다음을 통해 공유


FrameworkElement.LayoutTransform 속성

정의

레이아웃을 수행할 때 이 요소에 적용해야 하는 그래픽 변환을 가져오거나 설정합니다.

public:
 property System::Windows::Media::Transform ^ LayoutTransform { System::Windows::Media::Transform ^ get(); void set(System::Windows::Media::Transform ^ value); };
public System.Windows.Media.Transform LayoutTransform { get; set; }
member this.LayoutTransform : System.Windows.Media.Transform with get, set
Public Property LayoutTransform As Transform

속성 값

Transform

이 요소가 사용해야 하는 변환입니다. 기본값은 Identity입니다.

예제

다음 예제에서는 요소에 적용 LayoutTransform 하는 방법을 보여줍니다. 이 예제에서는 인스턴스 Button 를 만들고 부모 Grid내에서 호스트합니다. 또한 속성을 사용하여 . LayoutTransform 에 적용 RotateTransform 합니다 Button.


Button^ btn2 = gcnew Button();
btn2->Background = Brushes::LightCoral;
btn2->Content = "RotateTransform";
btn2->LayoutTransform = gcnew RotateTransform(45, 25, 25);
Grid::SetRow(btn2, 0);
Grid::SetColumn(btn2, 1);
grid1->Children->Add(btn2);

Button btn2 = new Button();
btn2.Background = Brushes.LightCoral;
btn2.Content = "RotateTransform";
btn2.LayoutTransform = new RotateTransform(45, 25, 25);
Grid.SetRow(btn2, 0);
Grid.SetColumn(btn2, 1);
grid1.Children.Add(btn2);

Dim btn2 As New Button()
btn2.Background = Brushes.LightCoral
btn2.Content = "RotateTransform"
btn2.LayoutTransform = New RotateTransform(45, 25, 25)
Grid.SetRow(btn2, 0)
Grid.SetColumn(btn2, 1)
grid1.Children.Add(btn2)

<Button Grid.Row="0" Grid.Column="1" Background="LightCoral" Content="RotateTransform Applied">
  <Button.LayoutTransform>
    <RotateTransform CenterX="25" CenterY="25" Angle="45" />
  </Button.LayoutTransform>
</Button>

설명

반면 RenderTransform레이아웃 LayoutTransform 결과에 영향을 미칩니다.

변환 설정은 크기 조정 및 회전의 강력한 기능을 제공합니다. 그러나 LayoutTransform 작업을 무시 TranslateTransform 합니다. 이는 자식 요소의 FrameworkElement 레이아웃 시스템 동작이 조정되거나 회전된 요소의 위치에 대한 오프셋을 부모 요소의 레이아웃 및 좌표계로 자동 수정하기 때문입니다.

LayoutTransform 레이아웃 시스템 전체 패스를 필요 하지 않은 시나리오에서 호출 하면 애플리케이션 성능 저하 시킬 수 있습니다. 컬렉션PanelChildren 적용 LayoutTransform 하면 레이아웃 시스템에 의해 새 패스가 트리거되고 모든 화면 개체가 다시 보호되고 다시 정렬됩니다. 전체 UI(애플리케이션 사용자 인터페이스)를 업데이트하는 경우 이 기능은 정확히 필요한 기능일 수 있습니다. 그러나 전체 레이아웃 패스가 필요하지 않은 경우 레이아웃 시스템을 호출하지 않는 속성을 사용 RenderTransform 하므로 일반적으로 이 시나리오에서 더 나은 선택입니다.

유용한 예제 시나리오 LayoutTransform 로는 메뉴 구성 요소와 같은 요소를 가로에서 세로로 또는 그 반대로 회전하고, 포커스에서 요소 크기 조정(확대)을 지정하고, 편집 동작을 제공하는 등의 작업이 있습니다.

종속성 속성 정보

식별자 필드 LayoutTransformProperty
메타 데이터 속성 설정 true AffectsMeasure

적용 대상