【问题标题】:Silverlight and data bound property animation (Margin)Silverlight 和数据绑定属性动画(边距)
【发布时间】:2010-04-16 04:56:52
【问题描述】:

我的 Border 元素的 Margin 属性绑定到某个类的 StartDate (DateTime) 属性。如果属性更改边距也更改(在转换器的帮助下)。

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

提前谢谢你!

顺便说一句 - 这是我在这里的第一个问题 :)

【问题讨论】:

    标签: silverlight animation margin


    【解决方案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. ...或者我更喜欢的方式:寻找其他东西来制作动画。你可以操纵一个不同的对象来移动你的其他对象。您可以非常轻松地为不可见/清晰对象的宽度和高度设置动画。如果该项目是堆栈面板中的第一个项目,则它之后的所有项目都将随着其大小值的更改而移动。这可能会变得很挑剔,但它真的很容易做到。

    祝你好运!

    【讨论】:

      猜你喜欢
      • 2011-09-24
      • 1970-01-01
      • 2010-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多