我想对Int32Rect Y值更改中的wpf图像进行动画处理。 如何设置我的wpf图像DependencyObject(Int32Rect)值?
示例:
<Image Height="25" Width="25" Name="image3">
<Image.Source>
<CroppedBitmap Source="/LoadingCircle;component/Images/loading_circle24.png">
<CroppedBitmap.SourceRect>
<Int32Rect X="0" Y="0" Width="25" Height="25"/>
</CroppedBitmap.SourceRect>
</CroppedBitmap>
</Image.Source>
</Image>
答案 0 :(得分:0)
Int32Rect是一个结构。
因此不是依赖对象,因此您必须先为其中的任何一个属性设置动画。
我不确定SourceRect是否是依赖项属性,但我怀疑这可能是学术性的。
我认为您当前的方法不太可行。
您可以考虑在图像上设置动画片段。
这本身很棘手,因为动画只能在您指定的几何图形的起始范围内工作。您可能需要几何的某些部分来扩展边界。
或者。
您还可以做其他事情。
我想这是一个加载动画,也许您的要求不是一成不变的。
答案 1 :(得分:0)
除了不能为Int32Rect
结构实例的属性设置动画之外,还不能为CroppedBitmap类的属性设置动画。
尽管SourceRect
是依赖项属性,但只能在初始化CroppedBitmap实例期间设置其值。原因是该类实现了ISupportInitialize
接口。
请参见Remarks:
CroppedBitmap实现ISupportInitialize接口,以优化多个属性上的初始化。属性更改只能在对象初始化期间发生。调用BeginInit表示初始化已开始,调用EndInit表示初始化已完成。初始化后,属性更改将被忽略。