2016-11-06 34 views
0

我使用Visual Studio的C#,並試圖檢查ENTER鍵被按下,同時在文本框中如何檢查是否鍵文本框中Windows窗體

private void PasswordTextBox_TextChanged(object sender, EventArgs e) 
{ 
    if(keyenterhasbeenpressed) //I dont know what to put here 
    { 
     MessageBox.Show("You pressed the enter key"); 
    } 
} 

所以,當按下有人點擊進入該文本框,它會做一些事情。

+0

e.KeyCode包含密鑰代碼。例如:if(e.KeyCode == Keys.Enter){...} –

回答

1

TextChanged事件不太適合檢查按鍵。 最好用來檢查發件人對象,它是文本框本身。

要檢查ENTER鍵,你可以做到以下幾點:

private void PasswordTextBox_KeyDown(object sender, EventArgs e)  
{ 
    if(e.KeyCode == Keys.Enter) 
    { 
     MessageBox.Show("You pressed the enter key"); 
    } 
} 

private void PasswordTextBox_KeyPress(object sender, EventArgs e)   
{   
    if(e.KeyChar == 13) 
    { 
     MessageBox.Show("You pressed the enter key"); 
    } 
} 

這取決於什麼事件最適合您的需求。 您可以隨時放置一個斷點(假設爲visual studio),並檢查事件欄和發件人對象中的數據是否可用

0

爲了將該功能與文本框的按鍵事件相鏈接,請在以下代碼中添加以下代碼形式

this.textbox1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.OnKeyDownHandler); 

的designer.cs現在在同一形式的CS文件中定義的函數「OnKeyDownHandler」

private void OnKeyDownHandler(object sender, KeyEventArgs e) 
{ 

     if (e.KeyCode == Keys.Enter) 
     { 
     //enter key has been pressed 
     // add your code 
     } 

} 
+1

您不應該使用編輯器手動修改'Designer.cs'。 – Jim

+0

如果需要可以修改它們, –

相關問題