当一个用户关闭Windows或者机器的时候,WPF可以监听到其事件并可以发出警告。事件名称为Application.SessionEnding,在用户注销和关机时触发。
通过设置SessionEndingCancelEventArgs.Cancel 为true,可以阻止其注销/关机行为:
1 private void Application_SessionEnding(object sender, SessionEndingCancelEventArgs e) 2 { 3 MessageBoxResult res = MessageBox.Show("Exiting Windows will terminate this app. Are you sure?", "End Session", MessageBoxButton.YesNo); 4 if (res == MessageBoxResult.No) 5 { 6 e.Cancel = true; 7 }