我是wp8应用程序开发的新手我想知道如何使用列表框位置加载地图位置..我不知道它所以请帮助我知道如何做到这一点..提前感谢..
我有listbox
个地方加载了它的纬度和经度,一个MAP
按钮一边...当我点击MAP
按钮我应该显示列表框的位置地图..所以请任何人帮我做这个...
这是一个只需将地图添加到页面的代码..(代码隐藏)
private void Map_Click(object sender, RoutedEventArgs e)
{
Map MyMap = new Map();
MyMap.Height = 392;
MyMap.Width = 412;
MyMap.Center = new System.Device.Location.GeoCoordinate(-25.235,133.611);
MyMap.ZoomLevel = 2;
MyMap.LandmarksEnabled = true;
MyMap.PedestrianFeaturesEnabled = true;
MyMap.ColorMode = MapColorMode.Dark;
srch.Children.Add(MyMap);
}
答案 0 :(得分:0)
好吧,我不知道你的列表框是怎么样的,所以我只为每个位置创建了一个空的图钉。
以下方法循环遍历ListBox中的每一行并调用方法来绘制图钉
private void ReadListBox()
{
foreach (var location in YourListBox)
{
DrawLocationToMap(new GeoCoordinate(latitudeInListBox, longitudeInListBox));
}
}
以下方法创建位置图钉并将其添加到地图
private void DrawLocationToMap(GeoCoordinate currGeo)
{
Pushpin locationPushPin = new Pushpin();
locationPushPin.Background = new SolidColorBrush(Colors.Black);
MapOverlay locationPushPinOverlay = new MapOverlay();
locationPushPinOverlay.Content = locationPushPin;
locationPushPinOverlay.PositionOrigin = new Point(0.5, 0.5);
locationPushPinOverlay.GeoCoordinate = new GeoCoordinate(currGeo.Latitude, currGeo.Longitude);
MapLayer locationLayer = new MapLayer();
locationLayer.Add(locationPushPinOverlay);
MyMap.Layers.Add(locationLayer);
}
您需要WPToolkit才能使用PushPins。 要安装工具包,您需要NuGet。如何安装:http://docs.nuget.org/docs/start-here/installing-nuget
安装NuGet后,打开控制台
并输入
Install-Package WPtoolkit
最后只需将命名空间添加到xaml
中xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"