+ -
当前位置:首页 → 问答吧 → 恼火,为什么不触发keydown事件

恼火,为什么不触发keydown事件

时间:2011-12-27

来源:互联网

我在datagridview控件中注册keydown事件了,程序启动后按键盘毫无反应,为什么啊?

作者: dyia1984   发布时间: 2011-12-27

我用以下代码实验,能引发KeyDown事件。你清理下代码,看看哪句话引发了问题。
C# code
    public partial class Form1 : Form
    {
        public Form1()
        {
            dataGridView1 = new DataGridView();
            ((ISupportInitialize) (dataGridView1)).BeginInit();
            SuspendLayout();
            // 
            // dataGridView1
            // 
            dataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
            dataGridView1.Location = new Point(0, 0);
            dataGridView1.Name = "dataGridView1";
            dataGridView1.RowTemplate.Height = 23;
            dataGridView1.Size = new Size(240, 150);
            dataGridView1.TabIndex = 0;
            dataGridView1.KeyDown += dataGridView1_KeyDown;
            // 
            // Form1
            // 
            AutoScaleDimensions = new SizeF(6F, 12F);
            AutoScaleMode = AutoScaleMode.Font;
            ClientSize = new Size(284, 262);
            Controls.Add(dataGridView1);
            Name = "Form1";
            Text = "Form1";
            ((ISupportInitialize) (dataGridView1)).EndInit();
            ResumeLayout(false);
        }

        private void dataGridView1_KeyDown(object sender, KeyEventArgs e)
        {
        }
    }

作者: gqqnb   发布时间: 2011-12-27

我的代码
C# code

private void dgv_detail_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.D)
                MessageBox.Show("123","");
        }


执行OK.

作者: ccy_qty   发布时间: 2011-12-27

在窗口的Designer.cs文件中查找像下面这样的代码C# code
this.dgv_detail.KeyDown += new System.Windows.Forms.KeyEventHandler(this.dgv_detail_KeyDown);

看看委托的事件有没有?

作者: ccy_qty   发布时间: 2011-12-27

热门下载

更多