我正在开发通用Windows应用程序。
我想在不同的状态下更改我的按钮样式,但我无法弄清楚(我对此不熟悉)
这是我的视觉状态组
<VisualStateGroup x:Name="StartStopTimer">
<VisualState x:Name="Start">
</VisualState>
<VisualState x:Name="Stop">
<VisualState.Setters>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
我有两种名为StartButtonStyle
和StopButtonStyle
的样式设置。
所以我想将按钮样式更改为StopButonStyle
视觉状态中的Stop
和StartButtonStyle
视觉状态下的Start
。
我该怎么做?我尝试在 Expression Blend 中使用记录,但它并没有对我的视觉状态应用任何内容。
答案 0 :(得分:2)
你在这里:
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="StartStopTimer">
<VisualState x:Name="Start">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="TestButton"
Storyboard.TargetProperty="Style">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource StartButtonStyle}">
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Stop">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="TestButton"
Storyboard.TargetProperty="Style">
<DiscreteObjectKeyFrame KeyTime="0"
Value="{StaticResource StopButtonStyle}">
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
当然,您需要在资源中定义样式,例如在页面资源中。
请不要忘记将我的回复标记为答案。