Насколько я понимаю, происхождение не имеет отношения к LayoutTransform.
MSDN говорит:
Настройка преобразования обеспечивает мощные возможности масштабирования и
вращение. Однако LayoutTransform игнорирует TranslateTransform
операции. Это потому, что система макета поведения для ребенка
элементы FrameworkElement автоматически исправляет любые смещения в
положение масштабированного или повернутого элемента в макете и координаты
Система родительского элемента.
и следующее «правильно» вращает кнопку.
<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>