2 sanningjing sanningjing 于 2016.04.12 14:41 提问

C# 单窗体keydown事件不响应

没有别的控件,具体情况如下:图片说明
图片说明
图片说明

3个回答

caozhy
caozhy   Ds   Rxr 2016.04.12 17:54
已采纳

this.keydown += form1_keydown;
这个写了么

caozhy
caozhy 回复ningjing_2015: 如果问题解决,请点下我回答右边的采纳,谢谢
大约 2 年之前 回复
sanningjing
sanningjing 嗯,少写了这一句,感谢。我在网上查的时候,很多都没有告知这样,谢谢啊。
2 年多之前 回复
qq_20246395
qq_20246395   2016.04.26 00:04

直接从属性窗口的事件双击,keycode,控制按键用e.control&e.keycode

CSDNXIAOS
CSDNXIAOS   2016.04.12 14:53

问题一描述:当新建一个窗体时,添加KeyDown事件后,会正常处理,但是当添加有控件时,比如Button,TextBox,不会触发窗体的KeyDown事件,也没有调用KeyDown事件的处理程序。

原因:由于窗体中添加了控件,于是焦点就在其中一个控件上,如果我们要处理的事件窗体和获取焦点的控件都同时拥有,系统就会将键盘的操作键值直接传递给这个获取焦点的控件。,就会出现上面这个问题。

解......
答案就在这里:C#Keydown事件不响应
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C#Keydown事件不响应
问题一描述:当新建一个窗体时,添加KeyDown事件后,会正常处理,但是当添加有控件时,比如Button,TextBox,不会触发窗体的KeyDown事件,也没有调用KeyDown事件的处理程序。 原因:由于窗体中添加了控件,于是焦点就在其中一个控件上,如果我们要处理的事件窗体和获取焦点的控件都同时拥有,系统就会将键盘的操作键值直接传递给这个获取焦点的控件。,就会出现上面这个问题。 解
C#窗体无法接受Keydown事件
问题一描述:当新建一个窗体时,添加KeyDown事件后,会正常处理,但是当添加有控件时,比如Button,TextBox,不会触发窗体的KeyDown事件,也没有调用KeyDown事件的处理程序。 原因:由于窗体中添加了控件,于是焦点就在其中一个控件上,如果我们要处理的事件窗体和获取焦点的控件都同时拥有,系统就会将键盘的操作键值直接传递给这个获取焦点的控件。,就会出现上面这个问题。 解
KeyDown事件不响应
KeyDown事件不响应的原因大体分为两种。 一、窗体的KeyPreview=true未设置,导致事件未注册。 二、方向键等部分按键由于系统本身有处理,不会响应keydown事件,这时候可以使用重写ProcessCmdKey来进行处理。不过记得多做测试,避免影响控件原有事件。 例如,处理了方向键,可能会影响光标移动等默认处理,处理了tab键可能会影响光标跳转等处理,总之使用的时候谨慎点。如果
WinForm下的键盘事件(KeyPress、KeyDown)及如何处理不响应键盘事件
KeyDown事件用来处理功能键:F1 F2 F3… keyPress事件用来处理字符比如说:A B C… 1 2 3… 注:处理该事件时,需要先将窗体的 KeyPreview=true; (请注意,不设置该项是引起键盘事件不响应的多数原因)KeyPress事件的示例: private void FormMain_KeyPress(object sender, KeyPre
C# winform中keyDown事件用法
1、在form中添加KeyDown事件,如下图 2.、在事件中加入需要实现的方法,可以根据键值来区别按下哪个键需要执行什么事件。如下实例源码:   private void Login_KeyDown(object sender, KeyEventArgs e) { switch(e.KeyValue)
自定义控件里的keydown方法无法捕获所有的按键消息的处理方法
在一些控件里的keydown方法,没有办法捕获所有的按键消息 比如自己写一个窗体控件库,继承了UserControl 但是没有办法捕获一些键,比如方向键等 所以必须重载 processDialogkey 方法 processDialogkey 的描述 在msdn中是这样的  在消息预处理过程中调用此方法,以处理对话框字符,比如 Tab、Return、Esc 和箭头键。
解决Form或UserControl接收不到KeyDown等事件
解决Form或UserControl接收不到KeyDown等事件 2011-02-01  来自:博客园  字体大小:【大 中 小】 摘要:当Form包含自定义控件,或UserControl存在嵌套时,外层的对象就会接收不到KeyDown等事件了,但是,我们可以通过override基类的ProcessDialogKey方法来达到同样的效果   当Form包含自定义控件,或U
C#,WinForm中的KeyDown,KeyPress 和KeyUp事件相关知识点
Windows窗体通过引发键盘事件来处理键盘输入以响应Windows消息,大多数Windows窗体应用程序都通过处理键盘事件来以独占方式处理键盘输入。Windows窗体将键盘输入标识为由按位Keys枚举表示的虚拟键代码。使用Keys枚举,可以综合一系列按键以生成单个值,这些值与 WM_KEYDOWN和WM_SYSKEYDOWNWindows消息所伴随的值相对应。另外,程序开发人员可通过处理KeyDown或KeyUp 事件来检测大多数物理按键操作。字符键是Keys枚举的子集,它们与WM_CHAR和WM_
C# WinForm中PreviewKeyDown、KeyDown、KeyPress、KeyUp区别与联系
1、键事件按下列顺序发生: KeyDown KeyPress KeyUp 2、KeyDown触发后,不一定触发KeyUp,当KeyDown 按下后,拖动鼠标,那么将不会触发KeyUp事件。 3、定义 KeyDown:在控件有焦点的情况下按下键时发生。 KeyPress:在控件有焦点的情况下按下键时发生。(下面会说和KeyDown 的区别) KeyUp:在控件有焦点的情况下释放键时发
.NET漫游指南-010-WPF中的KeyDown和PreviewKeyDown事件的区别和用法
参考网址:https://msdn.microsoft.com/zh-cn/library/system.windows.forms.control.keydown(v=vs.110).aspx 关于Control.KeyDown事件官方的备注中是这样说明的(建议直接看英文,中文文档翻译不准确, 如果只是想要处理窗口级别的键盘事件同时也不想其它控件接收到键盘事件,在你的窗体中控件的KeyPre