1

我在地图控件上的 Windows Phone 7 MapLayer 上有一个图像,我需要能够移动该图像。改造它(动画)会很棒,但不是必须的。

所以假设我有一个 MapLayer 被调用pLayer,我向它添加了一个图像:

Image img = new Image();
img.Source = new BitmapImage(new Uri("XXX.png"));
pLayer.AddChild(img, new GeoCoordinate(LAT, LNG) );

将其添加到 MapLayer 后如何移动其位置[pLayer]

我可以访问pLayer.Childeren[KEY].Location吗?

4

2 回答 2

0

我不知道是否有更简单的方法,但一种选择是从图层中删除对象,然后将其重新添加到新位置。

Image img = ...some image loaded at a location on the map in the above code;
var ll = new GeoCoordinate(LAT, LNG);
Layer.Children.Remove(img);
Layer.AddChild(img, ll);

这个答案还提供了一个使用绑定的更复杂的解决方案。

于 2011-10-18T22:05:04.897 回答
-1

我认为您需要创建一个与地图控件大小相同的画布,然后将其添加为地图图层的子图层,并将图像添加为画布的子图层。然后,这应该使您能够通过处理触摸手势将图像绝对定位在画布上的任何位置。Silverlight Toolkit for WP7中的 GestureService.GestureListener提供了使这更容易的事件。

于 2011-01-07T11:32:33.163 回答