Я пытаюсь оживить цвет границы объекта с помощью Expression blend.
Каждый раз, когда я меняю значение границы в раскадровке на значение ресурса кисти, которое я создал ранее, базовая граница объекта изменяется, а не анимируется. Если я изменю значение свойства на базовое значение (т. Е .: я не использую ресурс кисти), анимация будет работать должным образом.
Разве мы не можем анимировать свойства цвета с помощью ресурсов кисти?
Вот код, сгенерированный Expression Blend при использовании жестко запрограммированного значения цвета для границы (этот код работает, анимация воспроизводится правильно, но значение границы жестко запрограммировано):
<Style x:Key="StandardTextBoxStyle" BasedOn="{x:Null}" TargetType="{x:Type TextBox}">
(...)
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TextBox}">
<Grid x:Name="grid">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
(...)
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualStateGroup.Transitions>
<VisualTransition GeneratedDuration="0" To="Focused">
<Storyboard>
<ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Shape.Stroke).(SolidColorBrush.Color)" Storyboard.TargetName="rectangle">
<EasingColorKeyFrame KeyTime="0" Value="#FFC2C2C2"/>
<EasingColorKeyFrame KeyTime="0:0:0.2" Value="#FF5FA5C9"/>
</ColorAnimationUsingKeyFrames>
</Storyboard>
</VisualTransition>
</VisualStateGroup.Transitions>
<VisualState x:Name="Unfocused"/>
<VisualState x:Name="Focused"/>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
(...)
</Style>
Как я могу заменить жестко заданное значение # FF5FA5C9 на значение локального ресурса кисти? Должен ли я просто заменить оператор Value = "# FF5FA5C9" на оператор DynamicResource / StaticResource?