Abbiamo introdotto l'uso del Bing Maps SDK per usare la mappe di Bing nelle Windows Store app in un precedente articolo:
https://www.winrtitalia.com/articoli/windows8/bing-maps-sdk-winrt-windows8.aspx
In WinRT possiamo aggiungere un'ulteriore funzionalità alle nostre mappe tracciando la posizione dell'utente, per visualizzarla anche direttamente su una mappa Bing.
Per questa operazione abbiamo a disposizione l'oggetto Geolocator e il suo evento PositionChanged.
private Pushpin _pin; private Geolocator _geolocator; public MainPage() { this.InitializeComponent(); _pin = new Pushpin(); map.Children.Add(_pin); _geolocator = new Geolocator(); _geolocator.PositionChanged += (Geolocator sender, PositionChangedEventArgs args) => { this.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, new DispatchedHandler( () => { var location = new Location(args.Position.Coordinate.Latitude, args.Position.Coordinate.Longitude); MapLayer.SetPosition(_pin, location); map.SetView(location, 15.0f); })); }; }
Come possiamo vedere dallo snippet, il suo uso è molto semplice: l'evento PositionChanged si scatena automaticamente quando viene recuperata la posizione, senza la necessità di dichiarare un metodo di inizializzazione. I parametri passati all'event handler contengono proprio le informazioni di latitudine e longitudine, che possiamo utilizzare per passarle alla mappa.
Per poter tracciare la posizione dobbiamo aggiungere Location tra le capabilities gestibili nel manifest; al primo avvio dell'applicazione viene chiesta conferma all'utente, per consentire all'app di tracciarne la posizione, con una finestra modale visibile in figura.

Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare Locust con Azure Load Testing
Referenziare un @layer più alto in CSS
Gestire gli accessi con Token su Azure Container Registry
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Utilizzare i variable font nel CSS
Escludere alcuni file da GitHub Secret Scanning
Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
Centralizzare gli endpoint AI Foundry con Azure API Management
Controllare la telemetria con .NET Aspire
Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
Generare una User Delegation SAS in .NET per Azure Blob Storage
Creare una libreria CSS universale: i bottoni
I più letti di oggi
- Analizzare il contenuto di una issue con GitHub Models e AI
- Integrare OpenAI tramite Aspire
- Interagire con Azure DevOps tramite MCP Server
- Creare un agente A2Acon Azure Logic Apps
- Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
- .NET Conference Italia 2025 - Milano
- Documentare i servizi REST con Swagger e OpenAPI con .NET 9