2013-05-21 46 views
0

我想在artem google maps的經度和緯度的基礎上顯示多個標記。目前,我只能根據地圖上的經度和緯度顯示一個地址。在Artem Google地圖上添加多個標記

我使用一個XML文件來存儲緯度和經度

<?xml version="1.0" encoding="utf-8"?> 
<Mark> 
    <Position> 
    <ID>1</ID> 
    <Latitude>37.2808</Latitude> 
    <Longitude>49.5832</Longitude> 
    <Name>A</Name> 
</Position> 
</Mark> 

我使用此代碼

XDocument xmlDoc = XDocument.Load(Server.MapPath("~/App_Data/Map.xml")); 
var query = from st in xmlDoc.Descendants("Position") 
         select st; 

    foreach (var p in query) 
    { 
      Marker mark = new Marker(); 
        mark.Position = new LatLng(double.Parse(p.Element("Latitude").Value), double.Parse(p.Element("Longitude").Value)); 
        mark.Title = p.Element("Name").Value; 
        mark.Info = p.Element("Name").Value; 
        GoogleMap1.Markers.Add(mark); 
    } 

回答

0

您也可以在地圖上,添加標記列表...你只需要找到如何從你的XML閱讀方式,以適當的形式...你也可以在標記構造器中的其他選項...

List<Marker> markers = new List<Marker>() 
{ 
    new Marker { Position = new LatLng(42.1229, 24.7879), Title="A" }, 
    new Marker { Position = new LatLng(42.7, 23.3), Title="B" }, 
    new Marker { Position = new LatLng(43.1, 22.3), Title="C" } 
}; 

GoogleMap1.Markers.AddRange(markers);