C#窗口程序中,我定义了一个键盘按就触发的方法,但是方法的内容无被执行,为什么呢?会不会是焦点的问题呢?
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
MessageBox.Show("keydown");
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
MessageBox.Show("keydown");
}
解决方案 »
- 有关二进制问题???
- 怎么返回一个string字符串的字节长度,不是字符长度,就是ascii的长度,例如"abc中国"应该长度是7
- IIS的問題
- 如何得到pictureBox 上的鼠标左键单击事件?
- 当传递具有新行的 DataRow 集合时,Update 要求有效的 InsertCommand。
- Forms.UserContrl WindowsFormsHost 鼠标消息
- 救命呀!!!!VS2003 DataGird读取数据库中数据时
- 页面执行时间500秒左右?是不是很慢??
- 谁有VISIO画UML的教程
- 问一个问题,请问,安装程序的向导是怎么实现的(仅窗体)。怎么能让在一个窗体里面,不停的点击下一步,出现不同的内容,然而全是在同一
- C# 怎么实现 windows用户 拒绝本地登录
- 请问动态缓冲区应该怎么开
但是如果窗体上有其他控件的时候,消息就由控件来处理了,
可以设置属性 KeyPreview
//获取或设置一个值,该值指示在将键事件传递到具有焦点的控件前,窗体是否将接收此键事件。
this.KeyPreview = false;
如果你新建一个窗体,上面没有任何控件的话,你的方法就会实现
如果窗体上面有控件的话,你的方法就不能实现了 你的窗体上一定有其他的控件
PS:其实如果窗体上面有控件的话,为什么不把方法写到控件的KeyDown的事件中呢?写在窗体中没有意义啊!