Приостановка раскадровки в WPF? - PullRequest
2 голосов
/ 13 февраля 2010

Я остановлю раскадровку в WPF, поэтому я использовал следующий код:

Storyboard TheStoryboard;

//Constructor 
public window
{
    TheStoryboard = (Storyboard)this.FindResource("TheStoryboardName");
}

private void MenuItemPause_Click(object sender, RoutedEventArgs e)
{
    TheStoryboard.Pause();
}

Но ничего не случилось!
Как правильно это сделать?

Ответы [ 2 ]

3 голосов
/ 13 февраля 2010

Я нашел проблему.Мне добавили триггер для начала раскадровки следующим образом:

<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();
}
1 голос
/ 11 февраля 2011

Я столкнулся с той же проблемой.

Но это связано с тем, что поведение в .NET Framework 3.5 и 4 кажется другим.

У меня был проект, который был построен с помощью .NET Framework 3.5, а затем изменен на .NET Framework 4.

В 3.5 у меня также был упомянутый триггер, чтобы начать раскадровку. Но я все еще мог сделать паузу в своем коде.

В 4 я не мог приостановить раскадровку с помощью триггера.

Итак, я переместил его, и теперь раскадровка работает так, как я ожидаю.

Спасибо, что поделились.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...