L'interfaccia di Windows Phone basa la sua esperienza sulla navigazione tra pagine, non solo all'interno di un'applicazione, ma estesa anche a tutte le altre che l'utente ha aperto e navigato. Questa esperienza è così importante che i dispositivi devono avere obbligatoriamente il pulsante back per permettere all'utente di tornare alla pagina precedente.
Vi sono situazioni in cui però si sfruttano le pagine per mostrare informazioni transitorie, come uno splash screen che esegue attività, o per caricare informazioni sempre nella stessa pagina, ma che per inutilità o facilità di navigazione non ha senso tenere nel journal di navigazione dell'utente. Con Windows Phone 7.1 sono state inserite quindi la proprietà BackStack e il metodo RemoveBackEntry per permettere rispettivamente di leggere la lista di navigazione e di rimuovere l'ultima pagina navigata che precede quella corrente. Questi membri sono disponibili sia sul PhoneApplicationFrame che sul NavigationService.
Ponendo quindi di avere una pagina come splash screen, ecco quindi cosa fare nella pagina principale della propria applicazione.
public partial class MainPage : PhoneApplicationPage { protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e) { base.OnNavigatedTo(e); if (this.NavigationService.BackStack.Any()) this.NavigationService.RemoveBackEntry(); } }
Nell'esempio si controlla che ci sia effettivamente una pagina che precede quella corrente, per evitare di chiamare il metodo in altre situazioni.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Usare il colore CSS per migliorare lo stile della pagina
Introduzione alle Container Queries
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Eseguire una query su SQL Azure tramite un workflow di GitHub
Usare lo spread operator con i collection initializer in C#
Sostituire la GitHub Action di login su private registry
Ottimizzare le pull con Artifact Cache di Azure Container Registry
Miglioramenti nelle performance di Angular 16
Aggiornare a .NET 9 su Azure App Service
Configurare il nome della run di un workflow di GitHub in base al contesto di esecuzione
C# 12: Cosa c'è di nuovo e interessante
Recuperare App Service cancellati su Azure
I più letti di oggi
- anche #vs13 update 4 è disponibile in RTM: https://aspit.co/azm
- Indicizzare Cosmos DB con #azure Search https://aspit.co/b4v di @CristianCivera #cosmosdb
- Utilizzare le sequence di SQL Server in Entity Framework Core
- Gestire l'accelerometro nelle applicazioni Silverlight per Windows Phone
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Modificare i metadati nell'head dell'HTML di una Blazor Web App
- stando a @edbott, la consumer preview di #win8 sarà rilasciata il 29 febbraio! http://aspitalia.com/42
- il supporto di #vs 10 a #netmicrofx arriverà resto. ecco la roadmap aggiornata: http://u.aspitalia.com/hh #vs10ita
- #aspilive: ancora @dbochicchio con le novità di #aspnet45 e #webforms. seguici live su https://aspit.co/vs12-live