2012-08-01 6 views
3

En venant de l'environnement Silverlight, la création de panneaux animés est douloureusement facile - Je viens de mettre tous mes contrôles sur une toile, et ajouté les lignes suivantes en XAMLComment ajouter des animations aux éléments de formulaires Windows?

  <Storyboard x:Name="canvasRight" 
         Completed="canvasRight_Completed"> 
       <DoubleAnimation From="0" To="500" 
           Duration="0:0:0.6" 
           Storyboard.TargetName="aboutCanvas" 
           Storyboard.TargetProperty="(Canvas.Left)"> 

        <DoubleAnimation.EasingFunction> 
         <QuinticEase EasingMode="EaseIn"/> 
        </DoubleAnimation.EasingFunction> 

       </DoubleAnimation> 
      </Storyboard> 

Maintenant, chaque fois que l'utilisateur a cliqué sur un bouton « A propos de » quelque part , la toile avec quelques images et des liens vers ma page web a juste jailli de la droite. Maintenant, évidemment, je sais que ce n'est pas si facile quand on fait une application Forms, mais je ne vois pas du tout comment le faire. D'après ce que j'ai compris, l'équivalent de toile est un panneau, sur lequel j'ai placé quelques contrôles. Je peux rendre le panneau visible ou invisible, mais je voudrais ajouter le même genre d'effet "slide out". Y a-t-il un moyen de le faire?

+0

WinForms ne sont pas destinés à offrir des animations, pour appliquer des animations WPF a été introduit –

+1

I voir. Merci –

+0

Il y a plutôt des API tierces pour les transitions. Je ne me souviens pas exactement, mais la recherche de transition.dll. –

Répondre

2

Les animations ne fonctionneront pas correctement dans WinForms. Technologie différente

Vous pouvez essayer l'API AnimateWindow pour se rapprocher.

De pinvoke.net:

[DllImport("user32")] 
static extern bool AnimateWindow(IntPtr hwnd, 
           int time, 
           AnimateWindowFlags flags); 
Questions connexes