Sto lavorando a un'applicazione Windows Phone 7 che utilizza FluidMoveBehavior in alcuni dei miei ListBox. Per qualche motivo, l'animazione FluidMoveBehavior sembra voler attivarsi in orari inappropriati. Al momento ho un ListBox sulla mia pagina principale, e io uso il seguente ItemsPanelTemplate che è solo uno StackPanel di base con una FluidMoveBehavior collegato ad esso:FluidMoveBehavior triggering nella navigazione Indietro
<ItemsPanelTemplate x:Key="fancyListBoxItemsPanelTemplate">
<StackPanel>
<Custom:Interaction.Behaviors>
<il:FluidMoveBehavior AppliesTo="Children">
<il:FluidMoveBehavior.EaseX>
<ExponentialEase EasingMode="EaseInOut"/>
</il:FluidMoveBehavior.EaseX>
<il:FluidMoveBehavior.EaseY>
<ExponentialEase EasingMode="EaseInOut"/>
</il:FluidMoveBehavior.EaseY>
</il:FluidMoveBehavior>
</Custom:Interaction.Behaviors>
</StackPanel>
</ItemsPanelTemplate>
Questo funziona bene quando ho aggiungere/rimuovere gli elementi, mentre sullo stesso schermo . L'animazione suona perfettamente. Tuttavia, quando si passa a una nuova pagina dalla mia pagina principale, quindi si torna indietro, l'animazione di spostamento fluido viene attivata come se tutti gli elementi fossero aggiunti contemporaneamente. C'è un modo per disabilitare questo comportamento in modo che si innesca solo l'animazione quando la lista cambia effettivamente?
Non riesco a riprodurre i sintomi. Quale meccanismo stai usando per navigare tra le schermate? –
Il pulsante Indietro o la funzione GoBack() attivano questo comportamento. Cordiali saluti, i ListBox sono ospitati in PivotItems in un PivotControl. Il layout viene invalidato in qualche modo dal PivotControl quando l'utente torna indietro? Forse sta causando l'attivazione del comportamento? –