「チェック済み」状態のポリゴンを含むトグルボタンを取得しました。ポリゴンを90度回転させます。
問題は、回転が完了した後、Polygon が元の角度に戻ることです。
my ToggleButton : (部分的なテンプレート)
<ControlTemplate TargetType="{x:Type ToggleButton}">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Unfocused"/>
<VisualState x:Name="Focused"/>
</VisualStateGroup>
<VisualStateGroup x:Name="CommonStates">
<VisualStateGroup.Transitions>
<VisualTransition GeneratedDuration="00:00:00.3"/>
</VisualStateGroup.Transitions>
<VisualState x:Name="MouseOver"/>
<VisualState x:Name="Normal"/>
<VisualState x:Name="Pressed"/>
<VisualState x:Name="Disabled"/>
</VisualStateGroup>
<VisualStateGroup x:Name="CheckStates">
<VisualStateGroup.Transitions>
<VisualTransition GeneratedDuration="0" To="Checked">
<Storyboard>
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" Storyboard.TargetName="regularPolygon">
<EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="90" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualTransition>
<VisualState x:Name="Indeterminate"/>
<VisualState x:Name="Checked"/>
<VisualState x:Name="Unchecked"/>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Polygon x:Name="regularPolygon"
Points="5,10 10,5 5,0"
RenderTransformOrigin="0.5,0.5"
Stretch="Fill"
UseLayoutRounding="False">
<Polygon.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform/>
<RotateTransform />
<TranslateTransform/>
</TransformGroup>
</Polygon.RenderTransform>
</Polygon>
</ControlTemplate>
ポリゴンが新しい角度を維持するように、いくつかの変更を作成する必要がありますか? 前もって感謝します 。