C# 如何创建';按键向下';以编程方式为同一windows窗体中的多个DataGridview创建事件?

C# 如何创建';按键向下';以编程方式为同一windows窗体中的多个DataGridview创建事件?,c#,winforms,datagridview,C#,Winforms,Datagridview,当我试图在c中为DataGridview创建KeyDown事件时,它显示错误“处理程序控件\u KeyDown已经存在于这个类中” 我已经在DataGridview1\u EditingControlShowing事件中为DataGridview1创建了KeyDown事件 e.Control.KeyDown +=new KeyEventHandler(Control_KeyDown); 我想为DataGridview2创建相同的事件,因此在DataGridview2\u EditingCont

当我试图在c中为DataGridview创建
KeyDown
事件时,它显示错误“
处理程序控件\u KeyDown已经存在于这个类中

我已经在
DataGridview1\u EditingControlShowing
事件中为DataGridview1创建了
KeyDown
事件

e.Control.KeyDown +=new KeyEventHandler(Control_KeyDown);
我想为DataGridview2创建相同的事件,因此在DataGridview2\u EditingControlShowing事件中

e.Control.KeyDown +=new KeyEventHandler(Control_KeyDown); // here the above error shown.So i tried

DataGridview2.KeyPress +=new KeyEventHandler(Control_KeyDown); // it compiles, but event not firing.

如果要处理
keypress
事件,则事件处理程序可能是
KeyPressEventArgs
对于
keydown
您的事件处理程序应该是
PreviewKeyDownEventArgs

例如

用于按键关闭事件

 dataGirdView1.PreviewKeyDown  += dataGridView1_PreviewKeyDown;


private void dataGridView1_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
    {

    }

在第二个gridview中未触发“向下键”或“按下键”
 dataGirdView1.PreviewKeyDown  += dataGridView1_PreviewKeyDown;


private void dataGridView1_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
    {

    }