此 WPF 程序显示一个 ContextMenu,它承载一个标有“退出”的 MenuItem,以及一个空窗口。选择“退出”应该会终止进程,但它只会关闭 Window 和 ContextMenu。我不是要强行终止这个程序,而是干净地结束它。
为什么在 Click 事件处理程序中调用 Application.Shutdown() 无法关闭程序?
using System;
using System.Windows;
using System.Windows.Controls;
class MyApp : Application {
[STAThread]
public static void Main() {
new MyApp().Run();
}
protected override void OnStartup(StartupEventArgs e) {
new Window().Show();
MenuItem menuItem = new MenuItem();
menuItem.Header = "Exit";
menuItem.Click += delegate { Shutdown(); };
ContextMenu contextMenu = new ContextMenu();
contextMenu.Items.Add(menuItem);
contextMenu.IsOpen = true;
}
}