在下面的:

<Rectangle Height="60" HorizontalAlignment="Left" Margin="50,100,0,0" Name="rectangle2" Stroke="Black" VerticalAlignment="Top" Width="60" >
<Rectangle.RenderTransform>
    <TransformGroup>
        <RotateTransform Angle="45" CenterX="30" CenterY="30"/>
    </TransformGroup>
</Rectangle.RenderTransform>

要在其中心旋转矩形,我必须将 CenterX 和 Y 设置为矩形大小的一半。有没有办法在标记中做到这一点?

像 CenterX="{Binding Path=Width\2}"之类的东西?

最佳答案

您可以在 RenderTrasformOrigin 本身上设置 Rectangle 属性:

<Rectangle Height="60" HorizontalAlignment="Left" Margin="50,100,0,0" Name="rectangle2"
           Stroke="Black" VerticalAlignment="Top" Width="60"
           RenderTrasformOrigin="0.5,0.5">
<Rectangle.RenderTransform>
    <TransformGroup>
        <RotateTransform Angle="45" />
    </TransformGroup>
</Rectangle.RenderTransform>

关于WPF RotateTransform 关于偏移量的问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5292754/

10-12 04:31