C# 检测到在dataGridView中选择行时单击鼠标

C# 检测到在dataGridView中选择行时单击鼠标,c#,winforms,events,datagridview,mouseclick-event,C#,Winforms,Events,Datagridview,Mouseclick Event,我很难让我的应用程序正常工作。我试图用鼠标在datagridview中选择一行。我需要保存此行的索引,以便在选定行中导航 我一直在查看DataGridView.CellMouseClick事件(),但无法确保事件处理程序与CellMouseClick事件关联 到目前为止,我的代码很简单,我只是想看看它是否检测到鼠标点击: public event DataGridViewCellMouseEventHandler CellMouseClick; private void Dat

我很难让我的应用程序正常工作。我试图用鼠标在datagridview中选择一行。我需要保存此行的索引,以便在选定行中导航

我一直在查看DataGridView.CellMouseClick事件(),但无法确保事件处理程序与CellMouseClick事件关联

到目前为止,我的代码很简单,我只是想看看它是否检测到鼠标点击:

    public event DataGridViewCellMouseEventHandler CellMouseClick;

    private void DataGridView1_CellMouseClick(Object sender, DataGridViewCellMouseEventArgs e)
    {
        MessageBox.Show("Mouse clicked in the datagridview!");
    }
谁能指出我哪里出了问题。任何帮助都会很好

您需要取消该事件

如果DataGridView名为DataGridView1,则在窗体的构造函数、设计器(如果通过设计器添加事件处理程序)或加载事件中需要以下代码行:

DataGridView1.CellMouseClick += DataGridView1_CellMouseClick;
这会将代码中的事件处理程序附加到事件

您当前的示例如下所示:

    public event DataGridViewCellMouseEventHandler CellMouseClick;

    private void DataGridView1_CellMouseClick(Object sender, DataGridViewCellMouseEventArgs e)
    {
        MessageBox.Show("Mouse clicked in the datagridview!");
    }
无需重新声明事件(
公共事件DataGridViewCellMouseEventHandler CellMouseClick;
),除非您正在构建自己的用户控件,该控件将承载DataGridView,并且您实际上需要事件。

您需要“”事件

如果DataGridView名为DataGridView1,则在窗体的构造函数、设计器(如果通过设计器添加事件处理程序)或加载事件中需要以下代码行:

DataGridView1.CellMouseClick += DataGridView1_CellMouseClick;
这会将代码中的事件处理程序附加到事件

您当前的示例如下所示:

    public event DataGridViewCellMouseEventHandler CellMouseClick;

    private void DataGridView1_CellMouseClick(Object sender, DataGridViewCellMouseEventArgs e)
    {
        MessageBox.Show("Mouse clicked in the datagridview!");
    }

无需重新声明事件(
公共事件DataGridViewCellMouseEventHandler CellMouseClick;
),除非您正在构建自己的用户控件,该控件将承载DataGridView,并且您实际上需要事件。

啊,我知道我确实需要以某种方式连接它。感谢您的详细解释和有用的链接。回答得很好!啊,我知道我确实需要用电线把它连接起来。感谢您的详细解释和有用的链接。回答得很好!