Abbiamo già parlato del Silverlight for Windows Phone Toolkit e delle funzionalità di transizione che offre. Queste transizioni ricordano quelle che si trovano nel sistema operativo e consentono di migliorare l'UX dell'applicazione.
Molto spesso vengono applicati semplicemente via XAML, mentre è possibile applicarle anche programmaticamente, ad esempio quando si cambia logicamente il contenuto della schermata, ma non l'effettiva view XAML, come quando si naviga all'interno di una lista che mostra il dettaglio.
Supponendo di avere due controlli Grid, uno chiamato ContentPanel e l'altro NewPanel, e che si vuole passare dal visualizzare l'uno all'altro, dando la sensazione all'utente che si stia cambiando effettivamente view, si può usare in codice come questo:
public void StartTransition(UIElement element, bool isEntering) { var transition = new TurnstileTransition(); transition.Mode = isEntering ? TurnstileTransitionMode.ForwardIn : TurnstileTransitionMode.BackwardIn; var r = transition.GetTransition(element); r.Completed += delegate { r.Stop(); }; r.Begin(); } private void ChangeView_Click(object sender, RoutedEventArgs e) { ContentPanel.Visibility = Visibility.Collapsed; NewPanel.Visibility = Visibility.Visible; StartTransition(this, true); }
In questo scenario va poi gestisco esplicitamente il pulsante back, così da invocare l'animazione al contrario (il secondo parametro indica se è da richiamare l'animazione di ingresso o uscita).
E' utile sottolineare che tutte le animazioni del toolkit possono essere applicate anche ai singoli elementi visuali, non essendo limitati solo alle pagine.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Gestire il routing HTTP in Azure Container App
Integrare SQL Server in un progetto .NET Aspire
Recuperare gli audit log in Azure DevOps
Creare una libreria CSS universale: Nav menu
Fornire parametri ad un Web component HTML
Introduzione ai web component HTML
Loggare le query più lente con Entity Framework
Eseguire una ricerca avanzata per recuperare le issue di GitHub
Utilizzare i variable font nel CSS
Migliorare l'organizzazione delle risorse con Azure Policy
Gestione dell'annidamento delle regole dei layer in CSS
Aggiornare a .NET 9 su Azure App Service
I più letti di oggi
- Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
- The Agentic Day - Milano
- .NET Conference Italia 2025 - Milano
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Gestione ciclo di vita in .NET Aspire