Una delle novità forse più rilevanti del Creators Update di Windows 10, è la possibilità di creare sofisticate animazioni di transizione tra una pagina e l'altra. Questo tipo di animazioni non sono una novità e sono state una parte fondamentale della UX di Windows fin dalla versione 8.
La novità consiste nel poter agire sui singoli elementi dell'interfaccia grafica in modo tale che l'animazione crei l'effetto di spostamento degli stessi da una pagina all'altra.
Questa tecnica permette di enfatizzare determinati elementi dell'interfaccia grafica, così che l'utente seguendo il percorso dell'animazione presti maggior attenzione a questi elementi.
Il cuore di questa tecnica è la classe ConnectedAnimation, recuperabile traminte ConnectedAnimationService. Per prima cosa, abbiamo bisogno di un elemento grafico da animare: per questo esempio è sufficiente una semplice immagine nella pagina di partenza.
<Image x:Name="MySourceImage"
Width="200"
Height="200"
Stretch="Fill"
Source="Assets/MyImage.png" />E una nella pagina di destinazione:
<Image x:Name="MyDestinationImage"
Width="400"
Height="400"
Stretch="Fill"
Source="Assets/MyImage.png" />Iniziamo a preparare l'animazione e, poco prima di navigare alla pagina di destinazione, eseguiamo la seguente riga di codice per richiamare il metodo PrepareToAnimate:
ConnectedAnimationService.GetForCurrentView().PrepareToAnimate("image", MySourceImage);E poi proseguiamo con la navigazione:
Frame.Navigate(typeof(MyDestinationPage));
Nella pagina di destinazione eseguiamo l'override del metodo OnNavigatedTo e richiamiamo il metodo GetAnimation, per recuperare l'animazione:
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
ConnectedAnimation imageAnimation =
ConnectedAnimationService.GetForCurrentView().GetAnimation("Myimage");
if (imageAnimation != null)
{
imageAnimation.TryStart(DestinationImage);
}
}E, infine, richiamiamo il metodo TryStart per eseguire l'animazione.
In questo modo, le due immagini, di due pagine differenti, grazie all'animazione sembreranno una sola immagine che, all'atto di navigare alla nuova pagina, ha cambiato posizione e dimensioni.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Keynote .NET Conference Italia 2025
Fissare una versione dell'agent nelle pipeline di Azure DevOps
Collegare applicazioni server e client con .NET Aspire
Dallo sviluppo locale ad Azure con .NET Aspire
Utilizzare il metodo ExceptBy per eseguire operazione di sottrazione tra liste
Gestione delle scrollbar dinamiche in HTML e CSS
Creare un agente A2Acon Azure Logic Apps
Centralizzare gli endpoint AI Foundry con Azure API Management
Personalizzare le pagine di errore su Azure App Service
Testare il failover sulle region in Azure Storage
Utilizzare l'espressione if inline in una pipeline di Azure DevOps
Recuperare gli audit log in Azure DevOps
I più letti di oggi
- Effettuare il multi-checkout in linea nelle pipeline di Azure DevOps
- Sfruttare una CDN con i bundle di ASP.NET
- Esaminare documenti XML con namespace utilizzando LINQ to XML
- Effetto turnstile su tutte le pagine con il Windows Phone Toolkit
- Alleggerire le applicazioni WPF sfruttando gli oggetti Freezable
- Inserire le news di Punto Informatico nel proprio sito
- Le DirectInk API nella Universal Windows Platform
- Gli oggetti CallOut di Expression Blend 4.0


