我要在WPF中暂停一个Storyboard,所以我使用了以下代码:
Storyboard TheStoryboard;
//Constructor
public window
{
TheStoryboard = (Storyboard)this.FindResource("TheStoryboardName");
}
private void MenuItemPause_Click(object sender, RoutedEventArgs e)
{
TheStoryboard.Pause();
}
但是什么也没发生!
正确的做法是什么?
最佳答案
我发现了问题。
我已经添加了一个启动故事板的触发器,如下所示:
<Window.Triggers>
<EventTrigger RoutedEvent="FrameworkElement.Loaded">
<BeginStoryboard Storyboard="{StaticResource TheStoryboardName}"/>
</EventTrigger>
</Window.Triggers>
我已经省略了它,并添加了一个C#代码来开始故事板:
Storyboard TheStoryboard;
//Constructor
public window
{
TheStoryboard = (Storyboard)this.FindResource("TheStoryboardName");
TheStoryboardName.Begin();
}
现在,以下代码运行良好。
private void MenuItemPause_Click(object sender, RoutedEventArgs e)
{
TheStoryboard.Pause();
}