J'ai le storyboard suivant qui est déclenché de la sorte;WPF Modifier la propriété après l'exécution du storyboard
Storyboard s = (Storyboard) myrect.FindResource("sb");
s.Begin();
-
<Storyboard BeginTime="0" Duration="Forever" x:Key="sb" >
<DoubleAnimation Storyboard.TargetName="myrect"
Storyboard.TargetProperty="Height" From="0" To="{Binding ElementName=myrect, Path=ActualHeight}"
Duration="0:0:0.2" BeginTime="0:0:0"/>
</Storyboard>
Mais comment pour que je puisse mettre en myrect.Height = 0;
puis je puis annuler cette (sur une presse de bouton)? Je comprends que cela ne fonctionne pas car l'animation est toujours en cours d'exécution. J'ai essayé FillBehavior="Stop"
mais cela provoque la hauteur de revenir à 0 à la fin de l'animation.
Je peux à nouveau FindResource et arrêter le Storyboard mais je me demandais s'il y avait un moyen de dire au Storyboard de terminer mais de laisser la Hauteur à la nouvelle valeur?
NOTE: Le story-board peut être réexécuté après cela, donc je ne crois pas que la suppression complète du story-board est une option.
Définissez FillBehavior sur Stop et ajoutez un gestionnaire Terminé qui définit la valeur de la propriété sur la valeur souhaitée. – Clemens
Avez-vous lu ça? https://docs.fr.microsoft.com – mm8