2010-10-06 22 views
6

Tôi tự hỏi tại sao mã này không bao giờ chạy khi tôi nhả phím.Sự kiện KeyUp trên biểu mẫu sẽ không chạy? C#

private void Form1_KeyUp(object sender, KeyEventArgs e) 
    { 
     MessageBox.Show("It works!"); 
    } 

Trong thiết kế mã này được thêm vào như bình thường:

this.KeyUp += new System.Windows.Forms.KeyEventHandler(this.Form1_KeyUp); 

Tuy nhiên các sự kiện như tải Mẫu hoạt động hoàn hảo. Có bất kỳ giải pháp phổ biến nào cho vấn đề này không?

Trả lời

9

Bạn nên đặt thuộc tính KeyPreview của biểu mẫu thành đúng, điều này sẽ hoạt động với mã của bạn.

2

Nếu hình thức có điều khiển khác trên nó cố gắng thiết lập thuộc tính Form.KeyPreview true: Key Preview on MSDN

0

Bạn phải chắc chắn rằng không có bất kỳ điều khiển hoạt động trên hình thức hiện tại. Đặt mã này vào Form.cs

this.ActiveControl = null; 
Các vấn đề liên quan