我正在尝试在我的WP8应用中创建视觉状态。但即使是这个简单的例子,我也无法让它发挥作用。有人能发现什么是错的吗?
<StackPanel x:Name="LayoutRoot" Background="Transparent" Margin="1,0,-1,0">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="VisualStateGroup">
<VisualState x:Name="Faded">
<Storyboard>
<DoubleAnimation Duration="0" To="0.5" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="ToFade" d:IsOptimized="True"/>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Button Content="some text" x:Name="ToFade" />
<Button Content="Change"
Click="Button_Click" />
</StackPanel>
在代码背后:
private void Button_Click( object sender, RoutedEventArgs e ) {
var result = VisualStateManager.GoToState(this.ToFade, "Faded", true);
}
应该为顶部按钮的不透明度设置动画。
答案 0 :(得分:2)
我认为GoToState()
方法的第一个参数应该是页面本身。请按以下方式致电GoToState()
:
VisualStateManager.GoToState(this, "Faded", true);