鼠标点击地图GMap.net的位置信息

Zee*_*mal 7 winforms c#-4.0 gmap.net

我正在使用Win Forms应用程序以及GMap.net(一个允许我们在Win Forms应用程序中使用Google Maps的库).直截了当地说,我能够获得坐标,即(纬度和经度)鼠标点击(左键单击).

 private void gm1_MouseDoubleClick(object sender, MouseEventArgs e)
    {
        if (e.Button == System.Windows.Forms.MouseButtons.Left)
        {
            double lat = gm1.FromLocalToLatLng(e.X, e.Y).Lat;
            double lng = gm1.FromLocalToLatLng(e.X, e.Y).Lng;
        }
    }
Run Code Online (Sandbox Code Playgroud)

我没有找到获得该地点位置的方法,即国名,城市名称等.

我搜索了谷歌地图的论坛,但我没有找到这个问题的答案.

任何

小智 5

这将为您提供您在地图上单击的位置的命名地点列表。

   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;
        }

        List<Placemark> plc = null;
        var st = GMapProviders.GoogleMap.GetPlacemarks(map.FromLocalToLatLng(e.X, e.Y), out plc);
        if (st == GeoCoderStatusCode.G_GEO_SUCCESS && plc != null)
        {
            foreach (var pl in plc)
            {
                if (!string.IsNullOrEmpty(pl.PostalCodeNumber))
                {
                    Debug.WriteLine("Accuracy: " + pl.Accuracy + ", " + pl.Address + ", PostalCodeNumber: " + pl.PostalCodeNumber);
                }
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)