日期:2014-05-18  浏览次数:20825 次

C#应用程序 事件问题,,急!!
在我写一个C#程序时如下代码:
private void Form1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
  .......
}
这个按键事件为什么没有用啊(语法都正确),

------解决方案--------------------
1.这个窗体里有其他控件,所以没轮到窗体的KeyDown事件来处理.
解决办法:把Form的KeyPreview属性设为true

------解决方案--------------------
若要仅在窗体级别处理键盘事件而不允许其他控件接收键盘事件,请将窗体的 KeyPress 事件处理方法中的 KeyPressEventArgs.Handled 属性设置为 true。某些键,如 Tab、Return、Esc 和箭头键,由控件自动处理。为使这些键引发 KeyDown 事件,必须在窗体上的每个控件中重写 IsInputKey 方法。用于重写 IsInputKey 的代码需要确定是否按下了某个特殊键,并且需要返回一个 true 值。
----MSDN------

这是基础...多看MSDN...