DataGridView.HitTest(Int32, Int32) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在给定了 x 坐标和 y 坐标的情况下返回位置信息,例如,行索引和列索引。
public:
System::Windows::Forms::DataGridView::HitTestInfo ^ HitTest(int x, int y);
public System.Windows.Forms.DataGridView.HitTestInfo HitTest (int x, int y);
member this.HitTest : int * int -> System.Windows.Forms.DataGridView.HitTestInfo
Public Function HitTest (x As Integer, y As Integer) As DataGridView.HitTestInfo
参数
- x
- Int32
x 坐标。
- y
- Int32
y 坐标。
返回
包含位置信息的 DataGridView.HitTestInfo。
示例
下面的代码示例演示了此方法的使用。 此示例是属性参考主题中提供的更大示例的 Columns 一部分。
private DataGridViewCell clickedCell;
private void dataGridView1_MouseDown(object sender, MouseEventArgs e)
{
// If the user right-clicks a cell, store it for use by the shortcut menu.
if (e.Button == MouseButtons.Right)
{
DataGridView.HitTestInfo hit = dataGridView1.HitTest(e.X, e.Y);
if (hit.Type == DataGridViewHitTestType.Cell)
{
clickedCell =
dataGridView1.Rows[hit.RowIndex].Cells[hit.ColumnIndex];
}
}
}
Private clickedCell As DataGridViewCell
Private Sub dataGridView1_MouseDown(ByVal sender As Object, _
ByVal e As MouseEventArgs) Handles dataGridView1.MouseDown
' If the user right-clicks a cell, store it for use by the
' shortcut menu.
If e.Button = MouseButtons.Right Then
Dim hit As DataGridView.HitTestInfo = _
dataGridView1.HitTest(e.X, e.Y)
If hit.Type = DataGridViewHitTestType.Cell Then
clickedCell = _
dataGridView1.Rows(hit.RowIndex).Cells(hit.ColumnIndex)
End If
End If
End Sub
注解
可以使用此方法确定控件的 DataGridView 哪个部分位于指定坐标处。 例如,可以调用此方法(指定鼠标单击的坐标),以确定单击的单元格的行索引和列索引,或者是否单击了标题单元格或滚动条。