Freigeben über


GeoCoordinateWatcher.Start Methode

Definition

Initiiert die Erfassung von Daten vom aktuellen Ortungsanbieter. Diese Methode aktiviert PositionChanged-Ereignisse und ermöglicht den Zugriff auf die Position-Eigenschaft.

Überlädt

Start()

Initiiert die Erfassung von Daten vom aktuellen Ortungsanbieter. Diese Methode aktiviert PositionChanged-Ereignisse und ermöglicht den Zugriff auf die Position-Eigenschaft.

Start(Boolean)

Initiiert die Erfassung von Daten vom aktuellen Ortungsanbieter. Diese Methode aktiviert PositionChanged-Ereignisse und ermöglicht den Zugriff auf die Position-Eigenschaft.

Start()

Initiiert die Erfassung von Daten vom aktuellen Ortungsanbieter. Diese Methode aktiviert PositionChanged-Ereignisse und ermöglicht den Zugriff auf die Position-Eigenschaft.

public:
 virtual void Start();
public void Start ();
abstract member Start : unit -> unit
override this.Start : unit -> unit
Public Sub Start ()

Implementiert

Beispiele

Das folgende Programm verarbeitet die erste Standortaktualisierung, die nach Start dem Aufruf erfolgt.

using System;
using System.Device.Location;

namespace GetLocationDataUpdateOnce
{
    class Program
    {
        static void Main(string[] args)
        {
            CLocation myLocation = new CLocation();
            myLocation.GetLocationDataEvent();
            Console.WriteLine("Enter any key to quit.");
            Console.ReadLine();
        }
        class CLocation
        {
            GeoCoordinateWatcher watcher;

            public void GetLocationDataEvent()
            {
                this.watcher = new GeoCoordinateWatcher();
                this.watcher.PositionChanged += new EventHandler<GeoPositionChangedEventArgs<GeoCoordinate>>(watcher_PositionChanged);
                this.watcher.Start();
            }

            void watcher_PositionChanged(object sender, GeoPositionChangedEventArgs<GeoCoordinate> e)
            {
                PrintPosition(e.Position.Location.Latitude, e.Position.Location.Longitude);
                // Stop receiving updates after the first one.
                this.watcher.Stop();
            }

            void PrintPosition(double Latitude, double Longitude)
            {
                Console.WriteLine("Latitude: {0}, Longitude {1}", Latitude, Longitude);
            }
        }
    }
}
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)
            ' 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

Hinweise

Durch Aufrufen dieser Methode wird die Erfassung von Daten vom aktuellen Standortanbieter initiiert. Der aktuelle Standortanbieter wird basierend auf Faktoren wie dem Alter und der Genauigkeit der Daten aller Anbieter, der von der Anwendung oder den Anwendungen angeforderten Genauigkeit und den mit dem Standortanbieter verbundenen Energieverbrauchs- und Leistungsbeeinträchtigungen ausgewählt. Der aktuelle Standortanbieter kann sich im Laufe der Zeit für instance ändern, wenn ein GPS-Gerät sein Satellitensignal im Innenbereich verliert und ein Wi-Fi Triangulationsanbieter zum genauesten Anbieter auf dem Computer wird.

Wenn der aktuell priorisierte Standortanbieter beim Aufruf der Start Methode keine Daten enthält, beginnt er mit dem Abrufen von Daten. Wenn die Berechtigungen für den Client erteilt wurden, wenn die Daten verfügbar werden, kann synchron auf Daten zugegriffen werden und wird asynchron übermittelt, wenn Ereignisse behandelt werden.

Wenn die Windows 7-Sensor- und Standortplattform deaktiviert ist, wenn Start aufgerufen wird, Start wird sofort zurückgegeben, PositionChanged Ereignisse werden nicht ausgelöst, und der von der Location -Eigenschaft Position zurückgegebene Speicherort enthält Unknown.

Wenn der aktuell priorisierte Standortanbieter über Daten verfügt, ist er sofort synchron verfügbar und wird asynchron übermittelt, wenn Ereignisse behandelt werden.

Wenn die aufrufende Anwendung nicht über berechtigungen für den Zugriff auf Daten von einem Standortanbieter verfügt, wird der Benutzer mit einem Dialogfeld aufgefordert, die Berechtigung entweder zu erteilen oder zu verweigern. Das Dialogfeld ist moduslos.

Gilt für:

Start(Boolean)

Initiiert die Erfassung von Daten vom aktuellen Ortungsanbieter. Diese Methode aktiviert PositionChanged-Ereignisse und ermöglicht den Zugriff auf die Position-Eigenschaft.

public:
 virtual void Start(bool suppressPermissionPrompt);
public void Start (bool suppressPermissionPrompt);
abstract member Start : bool -> unit
override this.Start : bool -> unit
Public Sub Start (suppressPermissionPrompt As Boolean)

Parameter

suppressPermissionPrompt
Boolean

true, wenn das Dialogfeld für Berechtigungen unterdrückt werden soll; false, wenn das Dialogfeld für Berechtigungen optional angezeigt werden soll, wenn noch keine Berechtigungen gewährt wurden.

Implementiert

Gilt für: