我正在使用MapControl来显示地图。我也有MapServiceToken。我使用MapIcon添加了自定义图钉,并将此对象分配给Map。它工作正常。 但是当我尝试使用相同的场景添加多个图钉并将其分配给地图时,我将在地图上获得最后一个图钉。其他其他图钉无法看到。 请告诉我这个问题的任何简单解决方案。谢谢
答案 0 :(得分:2)
您可以在没有MapIcon的地图上绑定图钉。
添加xaml
<Maps:MapControl x:Name="MapLocationsControl" MapServiceToken="add your token here">
<Maps:MapItemsControl x:Name="mapitem">
<Maps:MapItemsControl.ItemTemplate>
<DataTemplate>
<Image Height="50" Width="50"
Source="{Binding image,Mode=OneWay}"
Maps:MapControl.Location="{Binding Geopoint}"/>
</DataTemplate>
</Maps:MapItemsControl.ItemTemplate>
</Maps:MapItemsControl>
</Maps:MapControl>
在MapControl源中的c#绑定项
mapitem.ItemsSource = items;
其中items是使用MapItems类项目的可观察集合。您可以使用Add()添加项目。
ObservableCollection<MapItem> items = new ObservableCollection<MapItem>();
items.Add(new MapItem(lat,lng, "Assets/pushpinicon.png"));
MapItem类就像这样
public class MapItem {
public Geopoint Geopoint { get; set; }
public string image {get; set;}
public MapItem(double lat , double lng , string img)
{
Geopoint = new Geopoint(new BasicGeoposition() { Latitude = lat, Longitude = lng });
image=img;
}
}