Nach meinem Verständnis ist der Ursprung bei einer LayoutTransform nicht relevant.
MSDN sagt:
Das Festlegen einer Transformation bietet leistungsstarke Funktionen zum Skalieren und Drehen. LayoutTransform ignoriert jedoch TranslateTransform-Vorgänge. Dies liegt daran, dass das Verhalten des Layoutsystems für untergeordnete Elemente eines FrameworkElement alle Offsets an der Position eines skalierten oder gedrehten Elements im Layout- und Koordinatensystem des übergeordneten Elements automatisch korrigiert.
und das folgende "richtig" dreht die Taste.
<Grid ShowGridLines="True">
<Grid.RowDefinitions>
<RowDefinition></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
</Grid.ColumnDefinitions>
<Button Grid.Row="1" Grid.Column="1">Excessively Long Button Still Ok
<Button.LayoutTransform>
<RotateTransform Angle="90" />
</Button.LayoutTransform>
</Button>
</Grid>