Я использую ControlTemplate для создания разных стилей для кнопки. Он, конечно, нацелен на кнопку типа. Я могу изменить цвета кнопки для разных VisualStates, но все они жестко напечатаны или они относятся к статическому ресурсу.Изменение значения в VisualState
Пример:
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="Foreground">
<DiscreteObjectKeyFrame KeyTime="0" Value="Blue" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
На странице я разместил кнопку:
<Button Template="{StaticResource ResourceKey=ButtonDefaultStyle}"
Background="Yellow"
Content="Hello" />
Кнопка является желтым и при нажатии, он станет синим.
Теперь вопрос, как изменить цвет VisualState :: Pressed? Для меня это громоздко создать ControlTemplate для каждой цветной кнопки.
Я использую Visual Studio 2013 Express Update 3. Это для Windows 8.1 и Windows Phone 8.1 с использованием Universal SDK.