2012-12-03 54 views
3

是否有可能以某種方式將熱鍵綁定到消息框? 想象一下,顯示YES/NO消息框的場景。所以想法是,用戶可以通過在鍵盤上按「y」或「n」來選擇YES或NO按鈕。消息框快捷鍵

謝謝。

+0

在這種情況下,您想自定義消息框控制我認爲你會更明智地創建一個自定義的消息框的方式的形式。 – Derek

+1

當消息箱打開時,您是否嘗試按Y或N?或者你的語言環境適當的字母? – Steve

回答

3

這樣的想法是,用戶可以選擇YES,或按「Y」或「N」 鍵盤

消息框沒有按鈕已經擁有該功能。 假設你的MessageBox定義爲:

DialogResult dialogResult = MessageBox.Show("Are you sure ??", "Test Message Box", MessageBoxButtons.YesNo); 
if (dialogResult == DialogResult.Yes) 
{ 
    //Yes pressed 
} 
else if (dialogResult == DialogResult.No) 
{ 
    //No pressed 
} 

然後,如果你按YN,你會得到相應的結果。請檢查下面的屏幕截圖 enter image description here

+2

是的habib是正確的! – Sunny

+1

對於愚蠢的問題,我很抱歉,我向用戶展示的控件看起來與.NET消息框類似,但它不是標準的MessageBox,而且顯然有稍微不同的行爲。 – Alex

+0

@ Alex,@ Habib:沒有提到你是如何爲yes設置快捷鍵的。沒有點擊'Y','N'。 – Anand

1

實現這一目標的最好方法是創建自定義控件/消息框,在其中可以設計窗口的行爲併爲其分配熱鍵。

-2

製作自定義窗體,按鈕點擊做form.ShowDialog()

if (e.KeyChar == Keys.Y) 
     { 
      button_yes.PerformClick(); 
     } 
     else if(e.KeyChar == Keys.N) 
     { 
      button_no.PerformClick(); 
     } 

:)