Gestire al meglio le animazioni all'interno di un controllo Panorama per Windows Phone
Nello sviluppo di applicazioni per Windows Phone che facciano uso di Panorama, è bene ricordare che le animazioni restano attive anche quando il PanoramaItem corrente non viene visualizzato.
In questi scenari, occorre prestare attenzione, perchè le animazioni, anche se non visualizzate, continuano a consumare risorse, rendendo, di fatto, la nostra applicazione più lenta.
In questi scenari occorre stoppare le animazioni, per poi riprenderle quando l'elemento che le contiene viene visualizzato. Per fare questo, è sufficiente intercettare l'evento SelectionChanged del controllo Panorama ed applicare un codice come il seguente:
private void panorama_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (panorama.SelectedItem == myItem) storyboard.Resume(); else storyboard.Pause(); }
Questo codice stopperà la storyboard legata all'animazione quando l'elemento non è quello attualmente visualizzato, per farla partire quando lo diventa.







