ControlTemplate
作成したforで問題が発生しToggleButton
ました。
ボタンがChecked
、の場合、aColorAnimation
がトリガーされ、コントロールの背景の色が変わります。ただし、ユーザーがMouseOver
状態に入ると、ボタンの背景にも影響を与える別のアニメーションがトリガーされます。
マウスがその状態でなくなるとMouseOver
、コントロールはその状態にある間は本来あるべき色に戻りませんChecked
。MouseOver
状態がトリガーされたときにこれが持続しない理由はわかりません。
私のVisualStateManager
部分はControlTemplate
このように見えます:
<VisualStateManger.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal"></VisualState>
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimation Storyboard.TargetName="BackgroundBorder"
Storyboard.TargetProperty="(Border.Background).(SolidColorBrush.Color)"
To="Gold" Duration="0:0:0.3" />
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="CheckedStates">
<VisualState x:Name="Checked">
<Storyboard>
<ColorAnimation Storyboard.TargetName="BackgroundBorder"
Storyboard.TargetProperty="(Border.Background).(SolidColorBrush.Color)"
To="PaleGoldenrod" Duration="0:0:0.3" />
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>