DataGrid.HitTest Method (Point)

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Gets information, such as row and column number of a clicked point on the grid, about the grid using a specific Point.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public DataGrid.HitTestInfo HitTest(
	Point position
)

Parameters

position
Type: System.Drawing.Point

A Point that represents single x,y coordinate.

Return Value

Type: System.Windows.Forms.DataGrid.HitTestInfo

A DataGrid.HitTestInfo that contains specific information about the grid.

The DataGrid.HitTestInfo, in conjunction with the HitTest method of the System.Windows.Forms.DataGrid control, is used to determine which part of a System.Windows.Forms.DataGrid control the user has clicked. The DataGrid.HitTestInfo contains the row, column, and part of the grid that was clicked. Additionally, the Type property returns a DataGrid.HitTestType enumeration.

The HitTest method takes an x and y argument supplied by the System.Windows.Forms.DataGrid control's DragDrop, DragEnter, DragOver, MouseDown, MouseMove, MouseUp and MouseWheel events.

The following code example uses the HitTest method in occurs when a user clicks on a grid.

Private Sub DataGrid1_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs)
    Dim hti As DataGrid.HitTestInfo
    hti = grid.HitTest(New Point(e.X, e.Y))
    Select Case hti.Type
    Case System.Windows.Forms.DataGrid.HitTestType.None 
       Console.WriteLine("You clicked the background.")
    Case System.Windows.Forms.DataGrid.HitTestType.Cell 
       Console.WriteLine("You clicked cell at row " & hti.Row & ", col " & hti.Column)
    Case System.Windows.Forms.DataGrid.HitTestType.ColumnHeader
       Console.WriteLine("You clicked the column header for column " & hti.Column)
    Case System.Windows.Forms.DataGrid.HitTestType.RowHeader 
       Console.WriteLine("You clicked the row header for row " & hti.Row)
    Case System.Windows.Forms.DataGrid.HitTestType.ColumnResize
       Console.WriteLine("You clicked the column resizer for column " & hti.Column)
    Case System.Windows.Forms.DataGrid.HitTestType.RowResize 
       Console.WriteLine("You clicked the row resizer for row " & hti.Row)
    Case System.Windows.Forms.DataGrid.HitTestType.Caption
       Console.WriteLine("You clicked the caption")
    Case System.Windows.Forms.DataGrid.HitTestType.ParentRows 
       Console.WriteLine("You clicked the parent row")
    End Select
 End Sub

.NET Framework
Available since 1.1
Return to top
Show: