Gmap.Net Marker at incorrect position but when the map is zoomed the marker goes to right place

≡放荡痞女 提交于 2019-12-01 16:43:30

问题


I've a Windows Forms Application with a Gmap.Net controller, what I want to do is to add markers based on an outside sources that provides locations. The thing is that when I add a marker is initially drawn in an incorrect location, but after I zoom out it goes to the right place. So this is what I got so far:

My Map controller is declare to be located at Panama, Panama.

private void button2_Click(object sender, EventArgs e)
{    
    //Layer count is just a variable to add new OverLays with different names
    var markersOverlay = new GMapOverlay("markers" + layerCount);

    //Marker far away in Quebec, Canada just to check my point in discussion        
    var marker = new GMarkerGoogle(new PointLatLng(58.0032, -79.4957), GMarkerGoogleType.red_small);

    markersOverlay.Markers.Add(marker);
    gmap.Overlays.Add(markersOverlay);
    layerCount++;
}

So when I press the button what I got is this (have in mind that the map location it's set to be in Panama and the marker in Canada):

And when I zoom out, the marker goes to the correct position in Canada.

Why my marker is been drawn in Panama initially?

P.D: I already check this question but it doesn't resolve my problem because I need to be adding more than 1 marker and myMap.UpdateMarkerLocalPosition(marker) is not a solution for me.


回答1:


It's because you're adding the marker to the overlay that has not been added to the map's overlays. Try to switch the order of the statements as follows:

gmap.Overlays.Add(markersOverlay);
markersOverlay.Markers.Add(marker);



回答2:


add a first marker at lat,lon = 0,0. you can also make this marker invisible with setting its marker image as 1x1 pixel transparent png image. first element of the marker do this kind of wrong placement.



来源:https://stackoverflow.com/questions/31545003/gmap-net-marker-at-incorrect-position-but-when-the-map-is-zoomed-the-marker-goes

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!