有点麻烦的问题

jcyluck 2006-11-01 05:34:40
我想实现这样一功能,当在textbox里按下ENTER键时,就执行BUTTON1_CLICK事件,我的代码如下,但结果并不理想,第一次按ENTER键时,并未执行BUTTON1_CLICK事件,再按一次才执行,代码如下,请高手指点,或者有其他更好的办法?

private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = "你按下ENTER键。";
this.textBox1.KeyDown -= new System.Windows.Forms.KeyEventHandler(this.button1_Click);
}
private void textBox1_KeyDown(object obj, System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
this.textBox1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.button1_Click);
}
}
...全文
53 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jcyluck 2006-11-01
  • 打赏
  • 举报
回复
谢谢 bitpolar()
挨踢啊挨踢 2006-11-01
  • 打赏
  • 举报
回复
private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(e.KeyChar.Equals((char)13))
{
//your work code here
}

}
bitpolar 2006-11-01
  • 打赏
  • 举报
回复
private void button1_Click(object sender, EventArgs e)
{
this.textBox1.Text = "你按下ENTER键。";
}

private void textBox1_KeyDown(object obj, System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
this.button1_Click(sender ,e);
}
bitpolar 2006-11-01
  • 打赏
  • 举报
回复
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = "你按下ENTER键。";
this.textBox1.KeyDown -= new System.Windows.Forms.KeyEventHandler(this.button1_Click);
}
private void textBox1_KeyDown(object obj, System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
this.button1_Click(sender ,e);
}
}

110,825

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧