k1f*_*1f1 9 c# keydown textchanged
我有以下代码,按下enter/return时不显示MessageBox.
对于任何其他键(即字母/数字),MessageBox显示为False.
private void cbServer_TextChanged(object sender, EventArgs e)
{
if (enterPressed)
{
MessageBox.Show("Enter pressed");
}
else
MessageBox.Show("False");
}
private void cbServer_Keydown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter || e.KeyCode == Keys.Return)
{
enterPressed = true;
MessageBox.Show("Enter presssed: " + enterPressed);
}
else
enterPressed = false;
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
编辑:上面的代码,我认为问题是_Keydown,所以我只发布了.
在表单设计器类(formname.designer.cs)中添加:
this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.Login_KeyPress);
Run Code Online (Sandbox Code Playgroud)
并将此代码添加到骨干代码(formname.cs):
void Login_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)13)
MessageBox.Show("ENTER has been pressed!");
else if (e.KeyChar == (char)27)
this.Close();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
58294 次 |
| 最近记录: |