ボタンをクリックしたときに、ボタンの画像を+90度または-90度(現在の角度に依存)回転させたい。私はいくつかの解決策を試しましたが、内部の画像だけではなく、ボタン全体を回転させることができました。ボタンをクリックして画像を回転する
<Button Width="110">
<StackPanel Orientation="Horizontal">
<TextBlock Text="Options" />
<Image RenderTransformOrigin="0.5, 0.5" Source="../../Images/gt.png">
<Image.RenderTransform>
<RotateTransform x:Name="AnimatedRotateTransform" Angle="0" />
</Image.RenderTransform>
<Image.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="AnimatedRotateTransform" Storyboard.TargetProperty="Angle" To="90" Duration="0:0:5" FillBehavior="Stop" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Image.Triggers>
</Image>
</StackPanel>
</Button>
これは、ボタン(小さな矢印が、私は一度クリックしたときにダウンポイント、および必要があるポイントのようになります。ここでは
は(スタイル属性などは読みやすくするために省略)私がこれまで持っているコードです右私はもう一度クリックすると:誰もが考えている
編集:?.NET 4.0、Visual Studioの2010を使用します。ああ、この「コードビハインド」を解決することは選択肢ではありません。 Image
がイベントをトリガしません
使用している.NETのバージョンは? Expression Blendを使用していますか? – Jens
@Jens .NET 4とVisual Studio 2010 – KBoek
Hmm .. tricky =)コードビハインドがオプションでない理由を聞かせてもよろしいですか?これは、すべてのボタン、ValueConverter、サブクラス化ボタン、またはアタッチされたビヘイビアを使用してコードを繰り返す必要なしに実行できます。 – Jens