Перехват исключений - C#
Формулировка задачи:
Здравствуйте, пытаюсь перехватывать исключения в оконном приложении таким кодом:
А создаю исключение так:
В итоге исключение перехватывается, программа выводит сообщение об ошибке, однако после приложение завершается крешом "прекращена работа программы .." Как мне от этого избавиться?
Заранее спасибо!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
static class Program
{
/// <summary>
/// Главная точка входа для приложения.
/// </summary>
[STAThread]
static void Main()
{
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.ThrowException);
AppDomain.CurrentDomain.UnhandledException += _UnhandledException;
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
public static void _UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
MessageBox.Show("исключение! " + e.ExceptionObject.ToString());
}
}
} private void button2_Click(object sender, EventArgs e)
{
throw new Exception("тестовое исключение!11");
}Решение задачи: «Перехват исключений»
textual
Листинг программы
System.Windows.Forms.Application.ThreadException += ApplicationThreadException;