我想为此ScaleTransform设置动画
<Image x:Name="photoB" Height="290" Width="420" Stretch="Uniform" RenderTransformOrigin="0.5,0.5" >
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleY="40" ScaleX="40"/>
<SkewTransform/>
<RotateTransform/>
<TranslateTransform/>
</TransformGroup>
</Image.RenderTransform>
</Image>
问题是我找不到让WPF开心的TargetProperty!
我尝试过像
这样的事情Storyboard.SetTargetProperty(kenBurnsAnimationA, new PropertyPath("(Image.RenderTransform)[0].ScaleTransform.ScaleX"));
和
Storyboard.SetTargetProperty(kenBurnsAnimationA, new PropertyPath("ScaleTransform.ScaleX"));
和
Storyboard.SetTargetProperty(kenBurnsAnimationA, new PropertyPath("(Image.RenderTransform.TransformGroup.ScaleTransform.ScaleX"));
但似乎没有任何效果。
XAML的C#“CodeBehind”秘诀是什么?
答案 0 :(得分:1)
尝试(Image.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)
。
答案 1 :(得分:0)
问题是我需要将一个空的Image.RenderTransform TransformGroup添加到我的XAML
<Image x:Name="photoA" Height="290" Width="420" Stretch="Uniform" RenderTransformOrigin="0.5,0.5" >
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform />
<SkewTransform/>
<RotateTransform/>
<TranslateTransform/>
</TransformGroup>
</Image.RenderTransform>
</Image>
如果它们不存在,您无法为它们制作动画!我想我也可以从C#中添加转移组。
感谢@Anton Tykhyy指出我正确的道路。