DataGrid.HitTestType Enumeration

Specifies the part of the System.Windows.Forms.DataGrid control the user has clicked.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

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

public enum HitTestType
/** @attribute FlagsAttribute() */ 
public enum HitTestType
public enum HitTestType

 Member nameDescription
CaptionThe caption of the System.Windows.Forms.DataGrid control. 
Supported by the .NET Compact FrameworkCellA cell in the System.Windows.Forms.DataGrid control. 
Supported by the .NET Compact FrameworkColumnHeaderA column header in the System.Windows.Forms.DataGrid control. 
Supported by the .NET Compact FrameworkColumnResizeThe column border, which is the line between column headers. It can be dragged to resize a column's width. 
Supported by the .NET Compact FrameworkNoneThe background area, visible when the control contains no table, few rows, or when a table is scrolled to its bottom. 
ParentRowsThe parent row section of the System.Windows.Forms.DataGrid control. The parent row displays information from or about the parent table of the currently displayed child table, such as the name of the parent table, column names and values of the parent record. 
Supported by the .NET Compact FrameworkRowHeaderA row header in the System.Windows.Forms.DataGrid control. 
Supported by the .NET Compact FrameworkRowResizeThe row border, which is the line between grid row headers. It can be dragged to resize a row's height. 

Use the members of this enumeration to determine which part of the grid has been clicked. The Type property of a DataGrid.HitTestInfo returns a DataGrid.HitTestType. The DataGrid.HitTestInfo is created by invoking the HitTest method of a System.Windows.Forms.DataGrid control.

The following example uses the HitTest method in a MouseDown event to return the DataGrid.HitTestInfo. The row, column, and part of the grid are then printed.

private void dataGrid1_MouseDown
(object sender, System.Windows.Forms.MouseEventArgs e)
   string newLine = "\n";
   System.Windows.Forms.DataGrid.HitTestInfo myHitTest;
   // Use the DataGrid control's HitTest method with the x and y properties.
   myHitTest = dataGrid1.HitTest(e.X,e.Y);
   Console.WriteLine("Column " + myHitTest.Column);
   Console.WriteLine("Row " + myHitTest.Row);
   Console.WriteLine("Type " + myHitTest.Type);
   Console.WriteLine("ToString " + myHitTest.ToString());
   Console.WriteLine("Hit " + ReturnHitTest(myHitTest.Type ));
 private string ReturnHitTest(System.Windows.Forms.DataGrid.HitTestType  hit ){
    // Use this function to return the part of the grid clicked.   
    switch(hit) {
       return "Cell";
       return "Caption";
        return "ColumnHeader";
       return "Resize";
       return "ParentRows";
       return "RowHeader";
       return "RowResize";
       return "None";
    default:return "Unknown";

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

Community Additions