0

我有一个 Gmap 控件,我在其中通过 c# 代码添加了很多点(标记)。在我添加标记后,我立即将 GListener 添加到所有标记。

现在我在网页上有几个按钮,当用户单击其中一个按钮时,地图会刷新以仅显示相对标记。当用户单击第一个按钮时一切正常,但是当用户单击任何其他按钮时,Glistener 不起作用,但标记确实会相应更改。

这是一些我添加标记和侦听器的代码。

marker = new GMarker(new GLatLng(lat, lng), new GIcon(Gicon));                 
clicklistener = new GListener(marker.ID, GListener.Event.click, string.Format(@"function(){{var w=new google.maps.InfoWindow();w.setContent('<center><b>{0}</b></center></br><center>{3}</center></br><center>{4}</center></br><center>{5}</center></br><center>{6}</center>');w.open({1}, {2});}}", SName + " , " + FacType, GMap1.GMap_Id, marker.ID, "Printer Status: " + PrinterStatus.ToString() + ", Battery: " + Sbat + "V  Signal: " + SSignal + "%", "Scanner Status: " + ScannerStatus.ToString(), "SMS Received: " + Sreceived + " , SMS Sent: " + Ssent, "Last SMS Date: " + SsmsDate.ToString() + " , Last Comms Date: " + ScommsDate.ToString()));

Marker 和 clicklistener 是全局定义的,并通过 gmap1.add(marker) 和 gmap1.add(clicklistener) 添加到地图有什么想法吗?

问候帕特里克

4

1 回答 1

0

排序。

所需要做的就是完全重置整个地图,如下所示: GMap1.reset(); 然后根据需要添加新的标记和侦听器:)

于 2013-06-10T13:15:05.600 回答