12

Canvas添付プロパティCanvas.Topとを使用して配置された要素がありCanvas.Leftます。次に、アニメーションを使用して、次のように要素を別の座標セットに移動します。

DoubleAnimation left = new DoubleAnimation( oldLeft, newLeft );
DoubleAnimation top = new DoubleAnimation( oldTop, newTop );

element.BeginAnimation( Canvas.LeftProperty, left );
element.BeginAnimation( Canvas.TopProperty, top );

Canvas.TopまたはCanvas.Left変更されるたびにイベントを受け取る方法はありますか? できればアニメと関係なく。

4

1 に答える 1

24

のメソッドを使用して、添付プロパティの変更イベントをキャッチできます。DependencyPropertyDescriptorAddValueChanged

var descriptor 
    = DependencyPropertyDescriptor.FromProperty( 
        Canvas.LeftProperty, typeof( YourControlType ) 
      );
descriptor.AddValueChanged( this, OnCanvasLeftChanged );
于 2010-02-05T14:01:55.180 に答える