web-dev-qa-db-ja.com

wpf画像を中心に回転させます

ユーザーがクリックしたときに回転したいボタンの画像があります。私はほとんどそれを働かせています。画像はクリックするとうまく回転しますが、中心を中心に回転しません。

左上隅ではなく中央を中心に画像を回転させるにはどうすればよいですか?

これが私のコードです:

<Button Name="btnRefreshPortList"
    Grid.Column="1"
    Margin="10 0 0 0"
    Command="{Binding RefreshPortList}">

    <Image Source="Images/refresh.jpg" 
        Height="15">
        <Image.RenderTransform>
            <RotateTransform x:Name="AnimatedRotateTransform" Angle="0" />
        </Image.RenderTransform>
        <Image.Triggers>
            <EventTrigger RoutedEvent="MouseDown">
                <BeginStoryboard>
                    <Storyboard>
                        <DoubleAnimation Storyboard.TargetName="AnimatedRotateTransform" 
                            Storyboard.TargetProperty="Angle" 
                            By="10"        
                            To="360" 
                            Duration="0:0:0.5" 
                            FillBehavior="Stop" />
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger>
        </Image.Triggers>
    </Image>
</Button>

BR FireFly3000

24
7heViking

画像のRenderTransformOriginを(0.5、0.5)に設定するだけです

<Image Source="Images/refresh.jpg" 
    RenderTransformOrigin=".5,.5"
    Height="15">
...
51
Thomas Levesque