General Windows Application Exception Handling C#

June 15, 2013 at 3:16 AMadmin


when you use C# to build Windows Forms Application you come to a point when you need a general Exception handing for both you UI and any thread in the application ... its easy just add the following to your Main method in the Program class

// Add the event handler for handling UI thread exceptions to the event.

Application.ThreadException += new ThreadExceptionEventHandler(UIThreadException);


// Set the unhandled exception mode to force all Windows Forms errors to go through

// our handler.



// Add the event handler for handling non-UI thread exceptions to the event.

AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(UnhandledException);




and make sure you add the following methods to the Program Class




private static void UIThreadException(object sender, ThreadExceptionEventArgs t)


// Handel your Exception here

       MessageBox.Show(t.Exception.Message, "error");



private static void UnhandledException(object sender, UnhandledExceptionEventArgs e)


// Handel your Exception here

var ex = e.ExceptionObject as Exception;

MessageBox.Show(ex.Message, "error");



Posted in: .NET | IT