Silverlight和数据绑定属性动画(边距)

时间:2010-04-14 15:16:47

标签: silverlight animation margin

我将Border元素与Margin属性绑定到某个类的StartDate(DateTime)属性。如果财产变更保证金也改变了(借助转换器)。

我想尽可能顺利地做出改变。例如,在UI端,数据类中的一小时等于屏幕上的15个像素,当我更改StartDate +/-一小时时,我可以看到元素边距向右/向左跳跃+/- 15像素...所以我怎么能动画这个?

提前谢谢!

BTW - 这是我在这里的第一个问题:)

1 个答案:

答案 0 :(得分:1)

不幸的是,您无法通过动画本机操纵边距。边距实际上是一个厚度对象,对于简单的属性动画师来说,几乎不可能找到对象。

但是,就像现在的任何事情一样,有很多方法可以覆盖它:

  1. 移动对象的位置而不是边距: Animate Margin Change in Silverlight

  2. 在WPF中创建一个类似于ThicknessAnimation类的新类,并在代码中调用它:http://blogs.msdn.com/blemmon/archive/2009/03/18/animating-margins-in-silverlight.aspx

  3. ...或者我喜欢的方式:找一些其他的动画。您可以操纵另一个移动其他对象的对象。您可以非常轻松地为不可见/清晰对象的宽度和高度设置动画。如果该项是堆栈面板中的第一项,那么它之后的所有项都将随着它的大小值的改变而移动。这可能变得挑剔,但这很容易做到。

  4. 祝你好运!