Wpf 仅当单击';X';带有';班次';钥匙扣?

Wpf 仅当单击';X';带有';班次';钥匙扣?,wpf,exit-code,Wpf,Exit Code,通常,单击右上角的“X”按钮将退出应用程序。我希望我的窗口窗体应用程序仅在按住“Shift”键时退出。如何执行此操作?您可以向关闭事件添加处理程序,如果通过选中键盘设置了相应的修改器,则可以取消。修改器并根据需要取消。如果您愿意,您可能需要添加逻辑来检查鼠标是否单击了关闭按钮 private void Window_Closing(object sender, CancelEventArgs e) { if (Keyboard.Modifiers == ModifierKeys.Shif

通常,单击右上角的“X”按钮将退出应用程序。我希望我的窗口窗体应用程序仅在按住“Shift”键时退出。如何执行此操作?

您可以向
关闭事件添加处理程序,如果通过选中
键盘设置了相应的修改器,则可以取消。修改器
并根据需要取消。如果您愿意,您可能需要添加逻辑来检查鼠标是否单击了关闭按钮

private void Window_Closing(object sender, CancelEventArgs e)
{
    if (Keyboard.Modifiers == ModifierKeys.Shift) return; //exit if shift pressed

    //cancel by default
    e.Cancel = true;
}