FrameworkElement.LayoutTransform 屬性

定義

取得或設定在執行版面配置時應該套用至這個專案的圖形轉換。

C#
public System.Windows.Media.Transform LayoutTransform { get; set; }

屬性值

這個項目應使用的轉換。 預設為 Identity

範例

下列範例示範如何將 套用 LayoutTransform 至 專案。 此範例會建立 的 Button 實例,並將它裝載在父 Grid 代 內。 它也會使用 LayoutTransform 屬性將 套用 RotateTransformButton

C#

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);
XAML

<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 會影響版面配置的結果。

設定轉換可提供調整和旋轉的強大功能。 不過, LayoutTransformTranslateTransform 忽略作業。 這是因為 自動 FrameworkElement 更正子項目的版面配置系統行為會將縮放或旋轉專案的位置的任何位移自動校正至父元素的配置和座標系統。

LayoutTransform 如果您在不需要配置系統完整傳遞的案例中叫用它,可能會導致應用程式效能不佳。 當您將 套用 LayoutTransformChildrenPanel 集合時,它會觸發版面配置系統的新傳遞,並強制重新測量和重新排列所有螢幕上的物件。 如果您要更新完整的應用程式使用者介面 (UI) ,這項功能可能是您需要的確切功能。 不過,如果您不需要完整的版面設定階段,請使用 RenderTransform 不會叫用配置系統的 屬性,因此,通常是此案例的較佳選擇。

實用範例案例 LayoutTransform 包括:將功能表元件等元素從水準旋轉到垂直,反之亦然,縮放元素 (放大) 焦點、提供編輯行為等等。

相依性屬性資訊

識別碼欄位 LayoutTransformProperty
設定為 的中繼資料屬性 true AffectsMeasure

適用於

產品 版本
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9