2013-02-20 107 views
0

我想要使用WPF来学习如何制作动画视框的大小,使用代码隐藏的opacitymask,在XAML是这样的如何在代码隐藏中为Storyboard.TargetProperty =“OpacityMask.Viewbox”创建propertypath?

<Storyboard> 
    <RectAnimation Storyboard.TargetProperty="OpacityMask.Viewbox" 
        From="-1,-1,3,3" To="0.49,0.49,0.02,0.02" Duration="0:0:0.5"/> 
</Storyboard> 

,它工作得很好。现在我试图做到这一点在后面的代码,但我不知道要放什么东西的属性路径,我试图

Storyboard.SetTargetProperty(animation, new PropertyPath(OpacityMask.ViewBoxProperty)); 

,但它给错误。有谁知道如何?

回答

1

这是TileBrush.Viewbox属性:

Storyboard.SetTargetProperty(animation, new PropertyPath(TileBrush.ViewboxProperty)); 

Storyboard.SetTargetProperty(animation, new PropertyPath("Viewbox")); 

您还需要设置动画的目标对象:

Storyboard.SetTarget(animation, element.OpacityMask); 

你当然也可以设置元素本身作为animati在目标上并使用与您的XAML相同的属性路径:

Storyboard.SetTarget(animation, element); 
Storyboard.SetTargetProperty(animation, new PropertyPath("OpacityMask.Viewbox")); 
+0

谢谢克莱门斯,它工作得很好。 – 2013-02-20 18:55:05