在Artem谷歌地图上添加多个标记
本文关键字:添加 Artem 谷歌地图 | 更新日期: 2023-09-27 18:14:32
我想在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);
}
您还可以在地图上添加标记列表…您只需要找到一种方法,如何将它们从XML中读取为下面的正确形式…,您还可以在Marker构造器中使用其他选项…
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);