Geocoordinatewarcher location дает неизвестное значение долготы
У меня есть приложение формы C#, в котором таймер устанавливается на каждую 1 секунду.
Внутри этого я хочу проверить местоположение моего устройства. Код выглядит следующим образом:
Вот как называется таймер
этот.Time1SecTimer = новая система.Окна.Формы.Таймер(это.компоненты);
этот.Time1SecTimer.Интервал = 1000;
этот.Time1SecTimer.ТИК += новая система.EventHandler(это.Time1SecTimer_Tick);
Time1SecTimer.Включен = истина;
//Метод Time1SecTimer_Tick
private void Time1SecTimer_Tick(object sender, EventArgs e) //Time1SecTimer Tick Event (every 1 sec) { double longitude = GetLongLatValue(); this.LongitudeValueLabel.Text = longitude.ToString(); }
//Метод GetLongLatValue
public double GetLongLatValue() { GeoCoordinateWatcher watcher = new GeoCoordinateWatcher(); GeoCoordinate coord = watcher.Position.Location; return coord.Longitude; }
Можно ли что-нибудь изменить здесь для правильного значения долготы?
Что я уже пробовал:
Я попытался изменить метод GetLongLatValue следующим образом, но это не сработало
GeoCoordinateWatcher watcher = new GeoCoordinateWatcher(); watcher.TryStart(false, // Do not suppress permissions prompt. TimeSpan.FromMilliseconds(1000)); // Wait 1000 ms to start. GeoCoordinate coord = watcher.Position.Location;