2012-11-30 5 views
9

È possibile implementare una Transizione personalizzata in WinRT? E.g. sarebbe bello avere transizioni per la visibilità del controllo. Quindi, quando mostri/nascondi una parte di una vista divisa, essa anima tutta la vista usando un effetto scorrevole.WinRT XAML Transizione personalizzata

risposta

0

Sì, è possibile, utilizzando le consuete tecniche di animazione WPF, solo con piccole modifiche a WinRT.

Lo schema normale consiste nell'applicare animazioni di doppio/colore/attenuazione agli elementi dell'interfaccia utente tramite storyboarding, attivate dalle modifiche apportate al gestore dello stato di visualizzazione. Puoi farlo in modo dichiarativo o tramite code-behind.

http://www.codeproject.com/Articles/23257/Beginner-s-WPF-Animation-Tutorial

http://blogs.msdn.com/b/wpfsdk/archive/2009/02/27/the-visualstatemanager-and-triggers.aspx

+2

Sto chiedendo specificamente le transizioni ma non le animazioni o i trigger. –

0

Per quanto ne so non è possibile costruire le vostre transizioni personalizzate e utilizzarle come normale WinRT transizioni, cioè, all'interno di una TransitionCollection.

<ListView.Transitions> 
    <TransitionCollection> 
     <myTransitions:PotatoeTransition/> 
    </TransitionCollection> 
</ListView.Transitions> 

Non è possibile eseguire quanto sopra per quanto ne so. (Ignorare il fatto che ho esemplificato con un controllo ListView, si applica a tutto ciò, credo)

Probabilmente dovrete utilizzare uno storyboard che anima sia il RenderTransform (TranslateTransform) e l'opacità per raggiungere il vostro obiettivo.
Penso che si possa ancora creare un comportamento se si vuole renderlo più riutilizzabile.