可能重複:
How can I assign the 'Close on Escape-key press' behavior to all WPF windows within a project?如何關閉在WPF中的窗口上的Esc鍵
我想關閉的窗戶,我的WPF項目,當用戶點擊退出按鈕。我不想在每個窗口中編寫代碼,但希望創建一個可以捕獲用戶按下轉義鍵時的類。
可能重複:
How can I assign the 'Close on Escape-key press' behavior to all WPF windows within a project?如何關閉在WPF中的窗口上的Esc鍵
我想關閉的窗戶,我的WPF項目,當用戶點擊退出按鈕。我不想在每個窗口中編寫代碼,但希望創建一個可以捕獲用戶按下轉義鍵時的類。
選項1
使用Button.IsCancel財產。
<Button Name="btnCancel" IsCancel="true" Click="OnClickCancel">Cancel</Button>
當您設置一個按鈕,真正的IsCancel屬性,創建與AccessKeyManager註冊的 按鈕。該按鈕是 然後在用戶按下ESC鍵時激活。
但是,這隻適用於對話框。
1選項
你的窗口,如果你想關閉Esc鍵按下Windows添加一個處理程序PreviewKeyDown。
public MainWindow()
{
InitializeComponent();
this.PreviewKeyDown += new KeyEventHandler(HandleEsc);
}
private void HandleEsc(object sender, KeyEventArgs e)
{
if (e.Key == Key.Escape)
Close();
}
我不想使用一個按鈕...任何hw謝謝,我找到了解決方案 –
@kishorejangid:第二個代碼示例不使用按鈕。 – CharithJ
@kishorejangid - 你可以在這裏發佈你的答案嗎? –
這不是我的解決方案..我甚至不想在每個窗口中完成。我想寫的風格,但那不是工作作爲歡迎使用屬性是不可用的風格 –
退房[這裏] [1]的信息 - 它解釋exactlyhow實現這一 [1] :http://stackoverflow.com/questions/3863431/how-can-i-assign-the-close-on-escape-key-press-behavior-to-all-wpf-windows-with –
這是一個重複的http://stackoverflow.com/questions/419596/how-does-the-wpf-button-iscancel-property-work –