Tout le concept de la gestion des exceptions me donne des maux de tête. Actuellement, ce que je veux faire, c'est gérer des exceptions spécifiques que je suis absolument certain de pouvoir gérer. D'un autre côté, je veux terminer l'application si une exception que je ne sais pas gérer est levée. Quand je place des blocs try-catch dans mon code source, ça a l'air moche car il y en a beaucoup. Existe-t-il un mécanisme global de gestion des exceptions tel qu'un événement déclenché une fois qu'une exception non gérée est levée? De cette façon, je peux afficher un message d'erreur à l'utilisateur et terminer l'application au lieu de réitérer ce processus encore et encore tout au long de mon code source.Gestion des exceptions globales dans .NET?
P.S. Je veux mettre fin à l'application dans un tel scénario parce que j'ai peur que le programme puisse commencer à fonctionner incorrectement une fois qu'une exception non gérée est levée.
Je vois que le gestionnaire d'événements tue le processus. Je veux montrer un contrôle d'utilisateur et le faire terminer l'application, mais le contrôle d'utilisateur n'est pas montré. La seule chose que je peux afficher est une boîte de message. – user246392
Vous pouvez essayer d'invoquer une méthode publique sur votre fenêtre principale qui affiche la vue, mais je ne suis pas sûr que cela fonctionne. IIRC il y a un drapeau dans le paramètre de l'événement que vous pouvez utiliser pour déterminer si l'application doit quitter ou non. –
La méthode publique ne fonctionnait que si elle contenait une boîte de message. Il semble que les boîtes de message sont spéciales. En outre, e.isTerminating est en lecture seule. – user246392