Freigeben über


CivicAddressResolver.ResolveAddress(GeoCoordinate) Methode

Definition

Löst eine Position synchron auf der Grundlage der Breiten- und Längenkoordinaten in eine Anschrift auf. Dieser Aufruf blockiert die Ausführung des aufrufenden Threads, während die Adresse aufgelöst wird.

public:
 virtual System::Device::Location::CivicAddress ^ ResolveAddress(System::Device::Location::GeoCoordinate ^ coordinate);
public System.Device.Location.CivicAddress ResolveAddress (System.Device.Location.GeoCoordinate coordinate);
abstract member ResolveAddress : System.Device.Location.GeoCoordinate -> System.Device.Location.CivicAddress
override this.ResolveAddress : System.Device.Location.GeoCoordinate -> System.Device.Location.CivicAddress
Public Function ResolveAddress (coordinate As GeoCoordinate) As CivicAddress

Parameter

coordinate
GeoCoordinate

Die GeoCoordinate, die den in eine Anschrift aufzulösenden Standort enthält.

Gibt zurück

Die aus dem coordinate-Parameter aufgelöste Anschrift. Wenn die Adresse nicht aufgelöst werden kann, wird Unknown zurückgegeben.

Implementiert

Ausnahmen

coordinate ist null.

coordinate enthält keinen gültigen Breiten- und Längengrad.

Beispiele

Das folgende Programm veranschaulicht, wie Sie aufrufen ResolveAddress , um eine bürgerschaftliche Adresse synchron aufzulösen.

using System;
using System.Device.Location;
namespace ResolveAddressSync
{
    class Program
    {
        static void Main(string[] args)
        {
            ResolveAddressSync();
        }
        static void ResolveAddressSync()
        {
            GeoCoordinateWatcher watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.High);
            watcher.MovementThreshold = 1.0; // set to one meter
            watcher.TryStart(false, TimeSpan.FromMilliseconds(1000));

            CivicAddressResolver resolver = new CivicAddressResolver();

            if (watcher.Position.Location.IsUnknown == false)
            {
                CivicAddress address = resolver.ResolveAddress(watcher.Position.Location);

                if (!address.IsUnknown)
                {
                    Console.WriteLine("Country: {0}, Zip: {1}",
                            address.CountryRegion,
                            address.PostalCode);
                }
                else
                {
                    Console.WriteLine("Address unknown.");
                }
            }
        }
    }
}
Imports System.Device.Location

Module ResolveAddressSync

    Public Sub ResolveAddressSync()
        Dim watcher As GeoCoordinateWatcher
        watcher = New System.Device.Location.GeoCoordinateWatcher(GeoPositionAccuracy.High)
        Dim started As Boolean = False
        watcher.MovementThreshold = 1.0     'set to one meter
        started = watcher.TryStart(False, TimeSpan.FromMilliseconds(1000))

        Dim resolver As CivicAddressResolver = New CivicAddressResolver()
        If started Then
            If Not watcher.Position.Location.IsUnknown Then
                Dim address As CivicAddress = resolver.ResolveAddress(watcher.Position.Location)
                If Not address.IsUnknown Then
                    Console.WriteLine("Country: {0}, Zip: {1}",
                                address.CountryRegion,
                                address.PostalCode)
                Else
                    Console.WriteLine("Address unknown.")
                End If
            End If
        Else
            Console.WriteLine("GeoCoordinateWatcher timed out on start.")
        End If
    End Sub


    Public Sub Main()

        ResolveAddressSync()
        Console.WriteLine("Enter any key to quit.")
        Console.ReadLine()
    End Sub

End Module

Hinweise

Das ResolveAddressCompleted Ereignis wird ausgelöst, wenn der Adressauflösungsvorgang abgeschlossen ist. Die bürgerliche Adresse, die aus dem coordinate Parameter aufgelöst wird, wird vom Address Element des Objekts zurückgegeben, das ResolveAddressCompletedEventArgs an den Ereignishandler übergeben wird.

Gilt für: