Как я могу анимировать статический объект в раскадровке WPF - PullRequest
2 голосов
/ 18 декабря 2008

У меня есть программа WPF, в которую мне нужно добавить «Демо-режим». Поскольку я хочу, чтобы мои дизайнеры могли изменять демонстрационный режим без необходимости каждый раз перекомпилировать программу, я решил, что было бы неплохо использовать раскадровку из внешнего файла XAML. «Демонстрационный режим» - это, по сути, раскадровка, анимирующая некоторые свойства зависимостей приложения.

Чтобы представить DP моего приложения, я создал открытый статический член (singleton) класса приложения, чтобы DP приложения всегда были доступны извне. В этом случае раскадровка будет обращаться к ним.

Во внешний файл XAML я добавил правильные xmlns, правильно ссылающиеся на пространство имен / сборку приложения. Таким образом, теоретически я должен иметь доступ к DP приложения в раскадровке.

Проблема в том, что я не знаю, как анимировать DP статического объекта в раскадровке, когда объект не объявлен / не назван в XAML. При объявлении кадра анимации раскадровки единственным прикрепленным свойством раскадровки являются Storyboard.TargetName и Storyboard.TargetProperty .

Буду признателен, если кто-нибудь даст мне подсказку, чтобы направить меня в правильном направлении.

1 Ответ

0 голосов
/ 22 марта 2009

Я не пробовал это, но если это выполнимо, я думаю, это выглядит примерно так:

<Storyboard ..>
    <DoubleAnimation Storyboard.Target="{x:Static MyNS:MyClass.Singleton}" 
                     Storyboard.TargetProperty="MyProperty" .../>
</Storyboard>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...