PositionChanged Event

GeoCoordinateWatcher.PositionChanged Event

.NET Framework (current version)
 

Indicates that the latitude or longitude of the location data has changed.

Namespace:   System.Device.Location
Assembly:  System.Device (in System.Device.dll)

Public Event PositionChanged As EventHandler(Of GeoPositionChangedEventArgs(Of GeoCoordinate))

This event is only raised when the distance moved since the last event exceeds the threshold that is specified by MovementThreshold.

The GeoPositionChangedEventArgs(Of T) object passed to the event handler includes the GeoPosition(Of T) object that contains the updated location data.

The following example shows how to handle the first PositionChanged event.

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

.NET Framework
Available since 4.0
Windows Phone Silverlight
Available since 7.0
Return to top
Show:
© 2016 Microsoft