Вам необходимо изменить геокодирование ваших координат.Во-первых, вам нужно добавить эти классы, чтобы десериализовать ответ обратного геокодирования.(Класс Result находится в пространстве имен GMap.NET.MapProviders.)
public class ReverseGeocodeResult
{
public PlusCode plus_code { get; set; }
public List<Result> results { get; set; }
public string status { get; set; }
}
public class PlusCode
{
public string compound_code { get; set; }
public string global_code { get; set; }
}
Затем вы можете геокодировать координаты с помощью HttpClient, но вам понадобится ключ API Google с включенным API геокодирования.первый.Получите один здесь , если у вас его нет.
using (var c = new HttpClient())
{
try
{
var result = await c.GetAsync("https://maps.googleapis.com/maps/api/geocode/json?latlng="
+ lat.ToString() + "," + longt.ToString() + "&key=YOUR_API_KEY");
string content = await result.Content.ReadAsStringAsync();
ReverseGeocodeResult results = JsonConvert.DeserializeObject<ReverseGeocodeResult>(content);
if (results != null && results.results.Count > 0)
richTextBox1.Text = results.results[0].formatted_address;
}
catch (Exception exc)
{
richTextBox1.Text = exc.ToString();
}
}
Вот импорт, который нужно добавить в начало класса вашей формы:
using GMap.NET;
using GMap.NET.MapProviders;
using GMap.NET.WindowsForms;
using GMap.NET.WindowsForms.Markers;
using Newtonsoft.Json;