2012-11-23 3 views
3

동적으로 생성 된 사각형을 동적으로 이동해야한다는 요구 사항이 있습니다.애니메이션이있는 WPF 직사각형 이동

나는 거의 구현을 마쳤으므로 각 사각형에 대해 아래 코드를 동적으로 작성하면 원하는 결과를 얻을 수 있습니다.

아래 코드는 X 축에서 원하는 사각형을 50 픽셀 이동합니다.

TranslateTransform translateTransform1 = new TranslateTransform(50, 0); aRectangle.RenderTransform = translateTransform1; 

문제는 이것이 애니메이션이되고 싶습니다. 아래의 코드는 동일한 직사각형이 애니메이션으로 이동하도록 작성되었지만 완전히 다른 결과를 모두 제공합니다. 어떤 도움을 많이 주시면 감사하겠습니다. 직사각형이 동적 일 때 코드를 통해 관리하고 싶습니다.

TranslateTransform translateTransform1 = new TranslateTransform(50, 0); 
Duration duration = new Duration(new TimeSpan(0, 0, 0, 1, 0)); 
DoubleAnimation anim = new DoubleAnimation(30, duration); 
translateTransform1.BeginAnimation(TranslateTransform.XProperty, anim); 
aRectangle.RenderTransform = translateTransform1; 

답변

1

Duration duration = new Duration(new TimeSpan(0, 0, 0, 1, 0)); 
DoubleAnimation anim = new DoubleAnimation(30, duration); 
aRectangle.RenderTransform = new TranslateTransform(); 
aRectangle.BeginAnimation(TranslateTransform.XProperty, anim); 
+0

어디 내가 50 개 픽셀 X 축에서 사각형을 이동하고 싶다고 지정합니까 시도? – user1847157

+0

'aRectangle.BeginAnimation (TranslateTransform.XProperty, anim);을 통해 애니메이션 할 속성을 지정하고'DoubleAnimation anim = new DoubleAnimation (30, duration); 중 하나는 중단 할 위치를 결정합니다. 따라서 30에서 50으로 변경하면 x 축에서 50 픽셀 이동합니다. 둘 이상의 속성에 애니메이션을 적용하려면'Storyboard'를 사용해야합니다 : http://msdn.microsoft.com/en-us/library/ms742868.aspx –

관련 문제