2016-11-06 36 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

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

相关问题