WP7 Перемещение объектов на карте - PullRequest
1 голос
/ 17 декабря 2010

У меня есть изображение на 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 или что-то еще?

Ответы [ 2 ]

0 голосов
/ 19 октября 2011

Я не знаю, есть ли более простой метод, но один из вариантов - удалить объект из слоя, а затем повторно добавить его в новом месте.

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);

Этот ответ также дает несколько более сложное решение с использованием привязки.

0 голосов
/ 07 января 2011

Я думаю, вам нужно создать Canvas того же размера, что и элемент управления Map, затем добавить его в качестве дочернего элемента слоя карты и добавить изображение в качестве дочернего элемента Canvas.Это должно дать вам возможность расположить изображение абсолютно в любом месте на холсте, обрабатывая сенсорные жесты.GestureService.GestureListener в Silverlight Toolkit для WP7 предоставляет события, которые облегчают эту задачу.

...