L'utilizzo degli oggetti Frame e Page permette la realizzazione di applicazioni navigabili, nelle quali ogni sezione può essere identificata da uno specifico Url ed è possibile consultare le varie pagine attraverso il normale modello di navigazione del browser.
L'associazione Url-Page può essere dichiarata nell'oggetto UriMapper esposto da Frame:
<navigation:Frame x:Name="ContentFrame" Style="{StaticResource ContentFrameStyle}" Source="/Home" Navigated="ContentFrame_Navigated" NavigationFailed="ContentFrame_NavigationFailed"> <navigation:Frame.UriMapper> <uriMapper:UriMapper> <uriMapper:UriMapping Uri="" MappedUri="/Views/Home.xaml" /> <uriMapper:UriMapping Uri="/Home" MappedUri="/Views/Home.xaml" /> <uriMapper:UriMapping Uri="/About" MappedUri="/Views/About.xaml" /> </uriMapper:UriMapper> </navigation:Frame.UriMapper> </navigation:Frame>
Di base una mappatura è definita attraverso una coppia Uri-MappedUri, per le quali, ad esempio, se si digita l'indirizzo http://localhost/Default.html#/About la Page About.xaml viene renderizzata all'interno dell'oggetto Frame.
Qualora l'Uri inserito nel browser non sia mappato ad alcuna Page l'applicazione andrebbe in errore, per gestire questo scenario e visualizzare una Page specifica, è sufficiente mappare un Uri non valido, che nel markup può essere definito come nel codice seguente.
<uriMapper:UriMapping Uri="{}{PaginaNonValida}" MappedUri="/Views/PageError404.xaml" />
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Referenziare un @layer più alto in CSS
Proteggere le risorse Azure con private link e private endpoints
Migliorare la sicurezza dei prompt con Azure AI Studio
Le novità di Angular: i miglioramenti alla CLI
Eseguire script pre e post esecuzione di un workflow di GitHub
Effettuare il refresh dei dati di una QuickGrid di Blazor
Triggerare una pipeline su un altro repository di Azure DevOps
Eseguire query manipolando le liste contenute in un oggetto mappato verso una colonna JSON
Miglioramenti agli screen reader e al contrasto in Angular
Creare alias per tipi generici e tuple in C#
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Supportare lo HierarchyID di Sql Server in Entity Framework 8