我在背景中设置了画布并添加了一些图像片作为该背景画布的子画面,现在我想将特定的图像控件移动到背景画布的给定xy位置,所以我尝试了下面给出的这种代码< / p>
bg_Canvas.Children [it] .RenderTransform = new TranslateTransform();
TranslateTransform trans = bg_Canvas.Children[it].RenderTransform as TranslateTransform;
DoubleAnimation animation = new DoubleAnimation();
animation.To = 80;
Storyboard.SetTarget(animation, trans);
Storyboard.SetTargetProperty(animation, new PropertyPath(TranslateTransform.XProperty));
Storyboard story = new Storyboard();
story.Children.Add(animation);
story.Begin();
它正在工作,但问题是移动图像控制无法放置在背景画布的正确x位置,它已经从放置图像的位置采取x位置,实际上第0个x位置从放置在画布上的图像控制开始所以我需要设置要放置的图像控件的背景画布的x位置。我怎么能纠正这个问题,如果有人知道,请告诉我解决方案。
答案 0 :(得分:1)
不要使用翻译,只需告诉画布放置图像的位置:
Canvas.SetTop(image, 80);
Canvas.SetLeft(image, 160);
编辑:为了让您能够为元素制作动画,您可以阅读Storyboard
- 在您使用它时,在属性中制作动画,正确放置"(Canvas.Left)"
或"(Canvas.Top)"
。
如果您使用的是WP8,则可以修改已发布的代码in this series of posts以在Windows Phone上运行(它是针对Windows 8编写的)。它使动画(包括在画布上)非常容易。