自己定义的winform控件,用其他键盘事件都无法响应,只有用ProcessCmdKey事件可以达到目的(别忘了主窗体的KeyPreview属性要设置为true),写法如下:
protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { switch (keyData) { case Keys.Alt | Keys.D3: txtBillCode.Focus(); txtBillCode.SelectAll(); break; } return base.ProcessCmdKey(ref msg, keyData); }