如何删除GMap.Net中的特定标记?只需使用坐标(纬度,lng)。这是我的一些代码,不适合我
不需要,您需要处理标记本身上的单击事件,通过坐标查找它是很繁琐的 如果您不确定,请尝试查找在标记上打开弹出窗口的示例,并尝试从此处开始工作。如果这没用,回来,我们会解决的如何删除GMap.Net中的特定标记?只需使用坐标(纬度,lng)。这是我的一些代码,不适合我,gmap.net,Gmap.net,不需要,您需要处理标记本身上的单击事件,通过坐标查找它是很繁琐的 如果您不确定,请尝试查找在标记上打开弹出窗口的示例,并尝试从此处开始工作。如果这没用,回来,我们会解决的 double last_lat; double last_lng; int indicator = 0; private void map_MouseClick(object sender, MouseEventArgs e) { if (e.Button == System.Win
double last_lat;
double last_lng;
int indicator = 0;
private void map_MouseClick(object sender, MouseEventArgs e)
{
if (e.Button == System.Windows.Forms.MouseButtons.Left)
{
double lat = map.FromLocalToLatLng(e.X, e.Y).Lat;
double lng = map.FromLocalToLatLng(e.X, e.Y).Lng;
if (last_lat != lat || last_lng != lng)
{
if (indicator == 0)
{
GMapOverlay markersOverlay = new GMapOverlay(map, "marker");
GMapMarkerGoogleRed marker = new GMapMarkerGoogleRed(new PointLatLng(lat, lng));
markersOverlay.Markers.Add(marker);
map.Overlays.Add(markersOverlay);
last_lat = lat;
last_lng = lng;
indicator = 1;
//MessageBox.Show("kina unhan!");
}
else
{
//MessageBox.Show(Convert.ToString(last_lat),"Last Lat");
//MessageBox.Show(Convert.ToString(last_lng), "Last Lng");
GMapOverlay markersOverlay = new GMapOverlay(map, "marker");
GMapMarkerGoogleRed marker = new GMapMarkerGoogleRed(new PointLatLng(last_lat, last_lng));
markersOverlay.Markers.Remove(marker);
map.Overlays.Remove(markersOverlay);
map.Refresh();
//GMapOverlay markersOverlay2 = new GMapOverlay(map, "marker");
//GMapMarkerGoogleRed marker2 = new GMapMarkerGoogleRed(new PointLatLng(lat, lng));
//markersOverlay.Markers.Add(marker2);
//map.Overlays.Add(markersOverlay2);
//MessageBox.Show("sunod");
}
}
}
}