Condividi tramite


GeoCoordinateWatcher.TryStart(Boolean, TimeSpan) Metodo

Definizione

Avvia l'acquisizione dei dati dal provider di posizione corrente. Questo metodo viene restituito in modo sincrono.

public:
 virtual bool TryStart(bool suppressPermissionPrompt, TimeSpan timeout);
public bool TryStart (bool suppressPermissionPrompt, TimeSpan timeout);
abstract member TryStart : bool * TimeSpan -> bool
override this.TryStart : bool * TimeSpan -> bool
Public Function TryStart (suppressPermissionPrompt As Boolean, timeout As TimeSpan) As Boolean

Parametri

suppressPermissionPrompt
Boolean

true per eliminare la finestra di dialogo dell'autorizzazione; false per visualizzare la finestra di dialogo dell'autorizzazione.

timeout
TimeSpan

Tempo di attesa espresso in millisecondi per l'avvio del provider di posizione prima del timeout.

Restituisce

true se l'acquisizione dei dati viene avviata nel periodo di tempo specificato da timeout; in caso contrario, false.

Implementazioni

Esempio

Nell'esempio seguente viene illustrato come chiamare TryStart.

using System;
using System.Device.Location;

namespace GetLocationProperty
{
    class Program
    {
        static void Main(string[] args)
        {
            GetLocationProperty();
        }

        static void GetLocationProperty()
        {
            GeoCoordinateWatcher watcher = new GeoCoordinateWatcher();

            // Do not suppress prompt, and wait 1000 milliseconds to start.
            watcher.TryStart(false, TimeSpan.FromMilliseconds(1000));

            GeoCoordinate coord = watcher.Position.Location;

            if (coord.IsUnknown != true)
            {
                Console.WriteLine("Lat: {0}, Long: {1}",
                    coord.Latitude,
                    coord.Longitude);
            }
            else
            {
                Console.WriteLine("Unknown latitude and longitude.");
            }
        }
    }
}
Imports System.Device.Location

Module GetLocationProperty
    Public Sub GetLocationProperty()
        Dim watcher As New System.Device.Location.GeoCoordinateWatcher()
        watcher.TryStart(False, TimeSpan.FromMilliseconds(1000))

        Dim coord As GeoCoordinate = watcher.Position.Location

        If coord.IsUnknown <> True Then
            Console.WriteLine("Lat: {0}, Long: {1}", coord.Latitude, coord.Longitude)
        Else
            Console.WriteLine("Unknown latitude and longitude.")
        End If
    End Sub

    Public Sub Main()
        GetLocationProperty()
        Console.ReadLine()
    End Sub

End Module

Commenti

Questo metodo blocca l'esecuzione del thread chiamante durante il periodo di tempo specificato da timeout. Prestare attenzione quando si chiama TryStart dal thread dell'interfaccia utente dell'applicazione.

Si applica a