Una delle caratteristiche principe di Silverlight è la facilità con cui è possibile animare l'aspetto o la posizione di ogni elemento dell'interfaccia.
Tale semplicità può facilmente portare ad inserire molte animazioni, la cui concorrenza può influire reciprocamente in modo negativo sulla fluidità delle stesse.
La fluidità delle animazioni, in termini di frame per secondo, è influenzata dal valore di MaxFrameRate della proprità Settings, esposta dall'oggetto Silverlight.
System.Windows.Interop.SilverlightHost host = Application.Current.Host; System.Windows.Interop.Settings settings = host.Settings; settings.MaxFrameRate = 30;
Tuttavia, anche settando valori molto elevati, entrano in gioco i fattori appena menzionati, direttamente influenzati dalle prestazioni del personal computer dell'utente.
Per valutare gli effettivi frame per secondo con cui sono riprodotte le animazioni è possibile impostare a true la proprietà EnableFrameRateCounter esposta sempre dall'oggetto Settings che abbiamo citato.
System.Windows.Interop.SilverlightHost host = Application.Current.Host; System.Windows.Interop.Settings settings = host.Settings; settings.EnableFrameRateCounter = true;
Con questo snippet, nella barra di stato di Internet Explorer verrà visualizzato un valore ad indicazione del rapporto tra il frame rate effettivo e quello massimo.
Controllando questo rapporto possiamo ponderare il livello di ottimizzazione delle animazioni che dobbiamo attuare per ottenere una visualizzazione corretta su più sistemi possibile.
Per visualizzare queste informazioni, è importante non dimenticare di consentire "Allow status bar updates via script" nei settings del browser.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Realizzare un effetto gradiente tramite composition API nella Universal Windows Platform
Personalizzare gli elementi del controllo SwipeView in Xamarin Forms
Creare un effetto di ombra sui controlli della Universal Windows Platform
Winget: un nuovo package manager per Windows
UI testing in applicazioni .NET desktop e mobile
Avviare una registrazione audio e video in una applicazione della Universal Windows Platform
Uso dei design-time data nelle applicazioni della Universal Windows Platform
Creare azioni rapide con SwipeView in Xamarin Forms
Dark mode e selezione dei temi in un'applicazione Xamarin Forms
Modificare il layout della paginazione del controllo CarouselView in Xamarin Forms
Effettuare il multibinding in un'applicazione Xamarin Forms
Abilitare l'uso di C# 9 nelle applicazioni Xamarin.Forms
I più letti di oggi
- Specificare un constraint per TypeParam di un componente Blazor generico
- Creare un record in C#
- Learn&Get 'Applicazioni del mondo reale con ASP.NET 2.0' - Milano
- Codemotion 2012 - Roma
- Windows 10 Universal Platform Live - Online
- .NET Conference Italia - Milano
- Blazor Conference 2020 Live - Online
- Annunciata la modalità di uscita di ADO.NET Entity Framework e dei Data Services
- Disponibile la versione finale di Hyper-V: la virtualizzazione per Windows Server 2008