2010-09-03 2 views
3

Comment puis-je redémarrer l'application WPF à partir du code? dans Windows Forms il y a Application.Restart, où pour une raison quelconque Microsoft a décidé de ne pas ajouter cette méthode dans WPF.Comment puis-je redémarrer l'application WPF?

Je déteste la discompatibilité entre WPF et WindowsForms! comme:

  window.Visibility = System.Windows.Visibility.Hidden; 

Quel est le problème avec cela?

  window. Visible = false; 
+2

Voici deux questions distinctes. –

+0

Jetez un oeil à cette question: http://stackoverflow.com/questions/4773632/how-do-i-restart-a-wpf-application – SepehrM

Répondre

3

Visibilité

Pour les contrôles et les panneaux, il y a une énorme différence entre Visibility.Collapsed et Visiblity.Hidden. Caché réserve l'espace de l'élément invisible, Réduire libère l'espace utilisé. Cela peut faire une grande différence dans une interface utilisateur. En utilisant la même énumération pour la visibilité de la classe de fenêtre, l'OMI est d'abord une question de maintien d'une constance dans la bibliothèque de classes, mais peut-être aussi d'autres différences plus fines.

Restart

S'il y a une possibilité de redémarrer directement l'application, je ne sais pas. Ce que vous pouvez essayer est d'utiliser App.Current.Shutdown() pour fermer l'application et démarrer une nouvelle instance via System.Diagnostics.Process.Start() où le chemin d'accès à l'application peut être pris de System.Reflection.Assembly.GetEntryAssembly(). `.