如何在WPF故事板中为静态对象设置动画

时间:2008-12-18 13:25:27

标签: xaml singleton storyboard static-members

我有一个WPF程序,我需要添加一个“演示模式”。因为我希望我的设计师能够修改演示模式而不必每次都重新编译程序,所以我很难从外部XAML文件中使用故事板。 “演示模式”基本上是一个动画故事板,动画了一些应用程序的依赖属性。

为了公开我的应用程序的DP,我创建了一个应用程序类的公共静态成员(单例),以便应用程序的DP始终在外部可用。在这种情况下,故事板将访问它们。

在外部XAML文件中,我添加了正确引用应用程序命名空间/程序集的正确xmlns。所以从理论上讲,我应该能够在故事板中访问应用程序的DP。

问题在于,当XAML中未声明/命名对象时,我不知道如何为Storyboard中的静态对象的DP设置动画。声明故事板动画帧时,唯一的故事板附加属性是 Storyboard.TargetName Storyboard.TargetProperty

如果有人能给我一些提示让我朝着正确的方向前进,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

我没有试过这个,但如果它可行,我猜它看起来像这样:

<Storyboard ..>
    <DoubleAnimation Storyboard.Target="{x:Static MyNS:MyClass.Singleton}" 
                     Storyboard.TargetProperty="MyProperty" .../>
</Storyboard>