Ho una pagina con una griglia contenente due colonne, la prima contiene un pulsante che attiva la visibilità della seconda (tramite associazione ViewModel). Come posso aggiungere un'animazione per mostrare/nascondere la seconda colonna (con Pivot come contenuto) in questo scenario?C# UWP XAML Animazioni
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Button Command="{Binding TogglePivot}"/>
</Grid>
<Pivot x:Name="Content_Pivot" Grid.Column="1">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup>
<!-- Hidden state -->
<VisualState x:Name="Hidden">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Content_Pivot" Storyboard.TargetProperty="Width">
<DiscreteObjectKeyFrame KeyTime="0" Value="0"/>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<!-- Visible state -->
<VisualState x:Name="Visible">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Content_Pivot" Storyboard.TargetProperty="Width">
<DiscreteObjectKeyFrame KeyTime="0" Value="600"/>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<interactivity:Interaction.Behaviors>
<!-- Show -->
<core:DataTriggerBehavior Binding="{Binding IsVisible}" ComparisonCondition="Equal" Value="True">
<core:GoToStateAction StateName="Visible"/>
</core:DataTriggerBehavior>
<!-- Hide -->
<core:DataTriggerBehavior Binding="{Binding IsVisible}" ComparisonCondition="Equal" Value="False">
<core:GoToStateAction StateName="Hidden" />
</core:DataTriggerBehavior>
</interactivity:Interaction.Behaviors>
<!-- Content.. -->
</Pivot>
</Grid>
Quanto sopra funziona bene, ma solo sulla prima levetta della visibilità del perno. I commutatori successivi non mostrano l'animazione ..
Qualsiasi modo semplice per ottenere ciò senza richiamare manualmente gli storyboard?
Grazie.
== == EDIT
ho fatto alcune modifiche al codice di cui sopra (cioè, aggiunto VisualStates
e DataTriggerBehaviour
).
Ancora non riesco a farlo funzionare ... Qualche idea?
Grazie a @Corcus, ho aggiornato il mio OP con il mio tentativo ... Ancora nessun dado. Ti dispiace mostrarmi il tuo campione? –
Aggiornerò la mia risposta quando arrivo al mio pc di casa. Resta sintonizzato :) – Corcus
@ Ubobo L'idea ti era un po 'sbagliata. Ho aggiornato la mia risposta. Quello di cui avevi bisogno erano le doppie animazioni e non il fotogramma chiave. Anche l'uso del Visual State Manager non era necessario. – Corcus