GetCurrentState на раскадровке, определенной и запущенной в XAML

Я все перерыл и не нашел ответа на этот вопрос. Мое приложение живет в мире свободного XAML, поэтому для поиска элементов приходится полагаться на XamlReaders и обход дерева. У меня есть компонент, который обрабатывает рендеринг этих страниц XAML. Этому средству визуализации необходимо знать состояние раскадровок, которые могут выполняться в загруженном XAML. Итак, что я хотел бы сделать в моем рендерере примерно так: -

var resources = _currentScreenFrameworkElement.Resources;
foreach (var item in resources.Values)
{
    if (item is Storyboard)
    {
        try
        {
            var storyboard = item as Storyboard;
            **if (storyboard.GetCurrentState() == ClockState.Active)**

Все хорошо и хорошо. Однако проблема в том, что когда я пытаюсь проверить CurrentState, выдается исключение: -

"Cannot perform action because the specified Storyboard was not applied to this object for interactive control."

Оглядевшись, я вижу, что это потому, что мне нужно сделать раскадровку управляемой. Итак, мой вопрос: как мне это сделать в XAML? Я не запускаю раскадровку в коде, поэтому не могу передать true в перегруженную BeginStoryboard.

5
задан Qix 10 September 2014 в 21:02
поделиться