2010-06-15 4 views

Répondre

1

Vous pouvez gérer l'événement MouseMove et vérifiez la IsMouseOver propriété

+0

merci pour ur réponse !! j'ai mis à jour ma question maintenant mon code est aussi là peut vous s'il vous plaît dites-moi comment puis-je arrêter animation.iam en utilisant le code ci-dessus pour démarrer l'animation et maintenant je veux arrêter pouvez-vous m'aider s'il vous plaît sur ceci selon le code ci-dessus –

1

Vous devriez être en mesure d'utiliser la méthode Storyboard.Stop() si vous avez commencé l'animation le réglage de la isControllable true

Storyboard.Begin(this, true); 

vous avez également la Storyboard.Pause() méthode si vous prévoyez de le redémarrer à nouveau sous certaines conditions.

Jetez un oeil à ceci: http://msdn.microsoft.com/en-us/library/ms742868.aspx

Essayez cela aussi:

<Style.Triggers> 
    <Trigger Property="IsMouseOver" Value="False"> 
     <Trigger.EnterActions> 
     <BeginStoryboard> 
      <Storyboard> 
      <!-- do your animation here (forever) --> 
      </Storyboard> 
     </BeginStoryboard> 
     </Trigger.EnterActions> 
     <Trigger.ExitActions> 
     <BeginStoryboard> 
      <Storyboard> 
      <!-- fake animation with duration set to 0 --> 
      </Storyboard> 
     </BeginStoryboard> 
     </Trigger.ExitActions>   
    </Trigger>    
    </Style.Triggers> 
0

Merci pour vos réponses !!

J'ai trouvé ma réponse, j'ai utilisé les événements mouse mouse et mouse leave pour cela.

Sur la souris entrez:

Storyboard.SetTargetProperty(doubleAnimation, new PropertyPath("(Canvas.Right)")); 
      _storyBoard.Children.Add(doubleAnimation); 
      _storyBoard.Pause(marqueeList); 

En congé de la souris:

Storyboard.SetTargetProperty(doubleAnimation, new PropertyPath("(Canvas.Right)")); 
     _storyBoard.Children.Add(doubleAnimation); 
     _storyBoard.Resume(marqueeList); 
Questions connexes