Search code examples
c#gmap.net

How to show a address from gmap in c#?


I use Gmap in my project, and I want to show a address .

I tried to use BingMap, Yahoo, OpenStreet and googleMap. but I cant't show address. I wrote this code:

private void gMapControl1_MouseClick(object sender, MouseEventArgs e)
        {

                PointLatLng myPoint= gMapControl1.FromLocalToLatLng(e.X, e.Y);
// GetAddress is my Method
                var addresses = GetAddress(myPoint);

                // Display Address
                if (addresses != null)
                    richTextBox1.Text = addresses[0];
                else
                    richTextBox1.Text = "Unable To Load Address";

            }

// this is my method

 List<string> GetAddress(PointLatLng point)
        {
            List<Placemark> placemarks = null;
            gMapControl1.MapProvider = GMapProviders.OpenStreetMap;
            var statusCode = GMapProviders.OpenStreetMap.GetPlacemarks(point, out placemarks);
            if (statusCode == GeoCoderStatusCode.G_GEO_SUCCESS && placemarks != null)
            {
                List<String> addresses = new List<string>();
                foreach (var placemark in placemarks)
                {
                    addresses.Add(placemark.Address);
                }
                return addresses;
            }
            return null;
        }

it's every time write in richTextBox (GoogleMapProvider): "Unable To Load Address"


Solution

  • Google Maps requires the provision of a personal key, which is impossible to obtain in some countries, such as Iran, due to sanctions. It is recommended to use Open Street, which is a completely free service.