手机
当前位置:查字典教程网 >编程开发 >C#教程 >C# KeyUp事件中MessageBox的回车(Enter)键回调问题解决方案
C# KeyUp事件中MessageBox的回车(Enter)键回调问题解决方案
摘要:本文解析了C#KeyUp事件中MessageBox的回车(Enter)键出现回调问题的解决办法。具体问题如下:在一个窗体上有一个名为txtT...

本文解析了C# KeyUp事件中MessageBox的回车(Enter)键出现回调问题的解决办法。具体问题如下:

在一个窗体上有一个名为txtTest的Textbox控件,如果在此控件的KeyUp事件中有按回车键 弹出messagebox消息框,那么在弹出的messagebox中如果按回车键去执行messagebox上的按钮,再回车键还会在KeyUp事件中继续执行。一直按回车键的话将循环进行。

代码如下所示:

private void txtTest_KeyUp(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { if (MessageBox.Show("输入完了?", this.Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes) { this.lblTest.Text = this.txtTest.Text; } } }

为了避免这种情况出现,可以把KeyUp里的程序移到KeyDown事件中即可

private void txtTest_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { if (MessageBox.Show("输入完了?", this.Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes) { this.lblTest.Text = this.txtTest.Text; } } }

这样在KeyDown里将不会再出现回车键回调的问题。

【C# KeyUp事件中MessageBox的回车(Enter)键回调问题解决方案】相关文章:

再议C#中的装箱与拆箱的问题详解

C#中的yield关键字的使用方法介绍

C#中Web.Config加密与解密的方法

HttpWebRequest出错.Section=ResponseHeader Detail=CR

C#词法分析器之词法分析的使用详解

C#删除文件目录或文件的解决方法

基于params,ref,out的参数问题详解

客户端实现蓝牙接收(C#)知识总结

解决C#中WebBrowser的DocumentCompleted事件不执行的实现方法

c#之利用API函数实现动画窗体的方法详解

精品推荐
分类导航