2010-03-16 6 views
0

Je travaille sur une application WPF qui devrait être utilisable avec deux moniteurs. Dans la fenêtre principale est un bouton qui détache une partie du contenu dans une seconde fenêtre qui peut ensuite être utilisée sur l'autre minitor. Cette deuxième fenêtre que j'ai implémentée en tant que singleton. Cela fonctionne assez bien, sauf que la deuxième fenêtre ne se retrouve pas dans l'arrêt de l'application, ce qui signifie que l'application continue à fonctionner en arrière-plan. En ce qui concerne ce problème, je voudrais savoir si un singleton est la bonne façon de le faire et si ce n'est pas le bon. Si c'est le cas, comment puis-je me débarrasser de l'instance et pourquoi ne puis-je pas accéder à l'instance singleton depuis app.xaml.cs?C#: Comment tuer une fenêtre singleton

Merci pour votre aide.

Répondre

3

Cela n'a rien à voir avec votre fenêtre étant un singleton, il est lié à la propriété ShutdownMode de votre application. Par défaut, sa valeur est OnLastWindowClose, ce qui signifie que l'application s'arrête lorsque toutes les fenêtres sont fermées. Vous devez donc fermer manuellement toutes vos fenêtres ou définir le ShutdownMode sur OnMainWindowClose. Vous pouvez également appeler le Application.Shutdown explicitement.

+0

Merci beaucoup, ShutdownMode a fait l'affaire. –