GeoCoordinateWatcher.PositionChanged Zdarzenie
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wskazuje, że szerokość geograficzna lub długość geograficzna danych lokalizacji uległa zmianie.
public:
event EventHandler<System::Device::Location::GeoPositionChangedEventArgs<System::Device::Location::GeoCoordinate ^> ^> ^ PositionChanged;
public event EventHandler<System.Device.Location.GeoPositionChangedEventArgs<System.Device.Location.GeoCoordinate>> PositionChanged;
member this.PositionChanged : EventHandler<System.Device.Location.GeoPositionChangedEventArgs<System.Device.Location.GeoCoordinate>>
Public Custom Event PositionChanged As EventHandler(Of GeoPositionChangedEventArgs(Of GeoCoordinate))
Public Event PositionChanged As EventHandler(Of GeoPositionChangedEventArgs(Of GeoCoordinate))
Typ zdarzenia
Implementuje
Przykłady
W poniższym przykładzie pokazano, jak obsłużyć pierwsze PositionChanged zdarzenie.
using System;
using System.Device.Location;
namespace LocationEvent1
{
class Program
{
static void Main(string[] args)
{
GeoCoordinateWatcher watcher;
watcher = new GeoCoordinateWatcher();
watcher.PositionChanged += (sender, e) =>
{
var coordinate = e.Position.Location;
Console.WriteLine("Lat: {0}, Long: {1}", coordinate.Latitude,
coordinate.Longitude);
// Uncomment to get only one event.
// watcher.Stop();
};
// Begin listening for location updates.
watcher.Start();
}
}
}
Imports System.Device.Location
Module GetLocationEvent
Public Class CLocation
Private WithEvents watcher As GeoCoordinateWatcher
Public Sub GetLocationDataEvent()
watcher = New System.Device.Location.GeoCoordinateWatcher()
AddHandler watcher.PositionChanged, AddressOf watcher_PositionChanged
watcher.Start()
End Sub
Private Sub watcher_PositionChanged(ByVal sender As Object, ByVal e As GeoPositionChangedEventArgs(Of GeoCoordinate))
PrintPosition(e.Position.Location.Latitude, e.Position.Location.Longitude)
' Uncomment the following to stop receiving updates after the first one.
' watcher.Stop()
End Sub
Private Sub PrintPosition(ByVal Latitude As Double, ByVal Longitude As Double)
Console.WriteLine("Latitude: {0}, Longitude {1}", Latitude, Longitude)
End Sub
End Class
Public Sub Main()
Dim myLocation As New CLocation()
myLocation.GetLocationDataEvent()
Console.WriteLine("Enter any key to quit.")
Console.ReadLine()
End Sub
End Module
Uwagi
To zdarzenie jest zgłaszane tylko wtedy, gdy odległość przeniesiona od ostatniego zdarzenia przekracza próg określony przez MovementThresholdwartość .
GeoPositionChangedEventArgs<T> Obiekt przekazany do procedury obsługi zdarzeń zawiera GeoPosition<T> obiekt zawierający zaktualizowane dane lokalizacji.