Q:

Avoid Mac app crashing after unhandled exception

I want to prevent my app from closing after an unhandled exception has been raised. 
I'm doing this with Xamarin and MonoMac, but I think I could translate Objective-C answers to C#. 
When an Exception happens and it's not caught anywhere, I register the event of unhandled exceptions:
AppDomain. CurrentDomain. UnhandledException += HandleUnhandledException;

And log it:
static void HandleUnhandledException(object sender, UnhandledExceptionEventArgs e)
{
    //Log the exception...
}

But then, when an exception happens, the HandleUnhandledException is executed and the event loop is exited:
NSApplication. Main(args);

So my app ends.  How can I avoid this?  Where should I place a try-catch block? 

A:

This is what the xamarin developer center has to say:
"You can add an event handler to the AppDomain. CurrentDomain. UnhandledException event, and you will get notified when unhandled managed exceptions occur (note that the app will exit as soon as you return from your event handler no matter what you do so pretty much the only purpose would be for you to collect diagnostic information.  Also it will only catch managed exceptions, not native crashes, which is another cause of exiting apps)." 
So, apparently, yo can add a global try catch block but that will just be to tell you about the managed exceptions and the app will exit by the end of the try catch.  So it won't serve your purpose fully.