我正在尝试使用Environment.Exit(0)
关闭MonoMac应用程序。但是,由于某种原因,此呼叫不会返回。它也不会抛出异常。当我在MonoDevelop的立即窗口中执行该函数时,它会超时。
我不知道如何进行调试。我以为Environment.Exit杀死了这个过程...
答案 0 :(得分:6)
您应该使用NSApplication.Terminate方法。
请注意,此方法可以调用应用程序委托(如果已定义)以确认终止(请参阅NSApplicationDelegate.ApplicationShouldTerminate)。
答案 1 :(得分:3)
您可以在AppDelegate.cs中添加两个覆盖功能。
public override NSApplicationTerminateReply ApplitionShouldTerminate(NSApplication sender)
{
mainWindowController.Window.Close();
return NSApplicationTerminateReply.Now;
}
public override bool ApplicationShouldTerminateAfterLastWindowClosed(NSApplication sender)
{
return true;
}