如何在双击事件中hitTest一个DataGridView

本文关键字:hitTest 一个 DataGridView 事件 双击 | 更新日期: 2023-09-27 18:11:29

我想要hitTest a datagridviewdoubleclick事件的datagridview。因为它是doubleclick事件,你只是有eventArgs而不是MouseEvent,所以我不知道doubleclick在哪里执行。

我尝试了Cursor.Position,但没有成功。

有人有解决这个问题的办法吗?

函数如下:

private void dgvFormulaires_DoubleClick(object sender, EventArgs e)
{
    if (dgvFormulaires.Rows.Count == 0)
        return;
    DataGridView.HitTestInfo test = dgvFormulaires.HitTest(Cursor.Position.X, Cursor.Position.Y);
    if(test.RowIndex >= 0)
        btnGestForm.PerformClick();
}

行索引始终是-1与该代码。

如何在双击事件中hitTest一个DataGridView

我替换了这一行

DataGridView.HitTestInfo test = dgvFormulaires.HitTest(Cursor.Position.X, Cursor.Position.Y);
这两行

现在运行良好

System.Drawing.Point pt = dgvFormulaires.PointToClient(Cursor.Position);
DataGridView.HitTestInfo test = dgvFormulaires.HitTest(pt.X, pt.Y);