DataGrid.HitTestType DataGrid.HitTestType DataGrid.HitTestType DataGrid.HitTestType Enum

定义

指定 DataGrid 控件中用户单击的部分。Specifies the part of the DataGrid control the user has clicked.

此枚举有一个 FlagsAttribute 属性,允许按位组合成员值。

public: enum class DataGrid::HitTestType
[System.Flags]
public enum DataGrid.HitTestType
type DataGrid.HitTestType = 
Public Enum DataGrid.HitTestType
继承
DataGrid.HitTestTypeDataGrid.HitTestTypeDataGrid.HitTestTypeDataGrid.HitTestType
属性

字段

Caption Caption Caption Caption 32

DataGrid 控件的标题。The caption of the DataGrid control.

Cell Cell Cell Cell 1

DataGrid 控件中的单元格。A cell in the DataGrid control.

ColumnHeader ColumnHeader ColumnHeader ColumnHeader 2

DataGrid 控件中的列标题。A column header in the DataGrid control.

ColumnResize ColumnResize ColumnResize ColumnResize 8

列边框,它是列标题之间的线。The column border, which is the line between column headers. 可以拖动它来调整列的宽度。It can be dragged to resize a column's width.

None None None None 0

当控件不包含表,或者包含的行很少时,或者当表滚动到其底部时可见的背景区域。The background area, visible when the control contains no table, few rows, or when a table is scrolled to its bottom.

ParentRows ParentRows ParentRows ParentRows 64

DataGrid 控件的父行区域。The parent row section of the 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.

RowHeader RowHeader RowHeader RowHeader 4

DataGrid 控件中的行标题。A row header in the DataGrid control.

RowResize RowResize RowResize RowResize 16

行边框,它是网格行标题之间的线。The row border, which is the line between grid row headers. 可以拖动它来调整行的高度。It can be dragged to resize a row's height.

示例

下面的示例使用HitTest中的方法MouseDown事件,将返回DataGrid.HitTestInfoThe 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";
      Console::WriteLine( newLine );
      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( myHitTest );
      Console::WriteLine( "Column {0}", myHitTest->Column );
      Console::WriteLine( "Row {0}", myHitTest->Row );
      Console::WriteLine( "Type {0}", myHitTest->Type );
      Console::WriteLine( "ToString {0}", myHitTest );
      Console::WriteLine( "Hit {0}", ReturnHitTest( myHitTest->Type ) );
   }

   String^ ReturnHitTest(
      System::Windows::Forms::DataGrid::HitTestType hit )
   {
      // Use this function to return the part of the grid clicked.   
      switch ( hit )
      {
      case(System::Windows::Forms::DataGrid::HitTestType::Cell):
         return "Cell";
       
      case(System::Windows::Forms::DataGrid::HitTestType::Caption):
         return "Caption";
       
      case(System::Windows::Forms::DataGrid::HitTestType::ColumnHeader):
          return "ColumnHeader";
          
      case(System::Windows::Forms::DataGrid::HitTestType::ColumnResize):
         return "Resize";
          
      case(System::Windows::Forms::DataGrid::HitTestType::ParentRows):
         return "ParentRows";
          
      case(System::Windows::Forms::DataGrid::HitTestType::RowHeader):
         return "RowHeader";
          
      case(System::Windows::Forms::DataGrid::HitTestType::RowResize):
         return "RowResize";
          
      case(System::Windows::Forms::DataGrid::HitTestType::None):
         return "None";

      default:
         return "Unknown";
      }
   }
private void dataGrid1_MouseDown
(object sender, System.Windows.Forms.MouseEventArgs e)
{
   string newLine = "\n";
   Console.WriteLine(newLine);
   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(myHitTest);
   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) {
    case(System.Windows.Forms.DataGrid.HitTestType.Cell):
       return "Cell";
       
       
    case(System.Windows.Forms.DataGrid.HitTestType.Caption):
       return "Caption";
       
    case(System.Windows.Forms.DataGrid.HitTestType.ColumnHeader):
        return "ColumnHeader";
          
    case(System.Windows.Forms.DataGrid.HitTestType.ColumnResize):
       return "Resize";
          
    case(System.Windows.Forms.DataGrid.HitTestType.ParentRows):
       return "ParentRows";
          
    case(System.Windows.Forms.DataGrid.HitTestType.RowHeader):
       return "RowHeader";
          
    case(System.Windows.Forms.DataGrid.HitTestType.RowResize):
       return "RowResize";
          
    case(System.Windows.Forms.DataGrid.HitTestType.None):
       return "None";
    default:return "Unknown";
    }
 }

Private Sub dataGrid1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
    Dim newLine As String = ControlChars.Cr
    Console.WriteLine(newLine)
    Dim myHitTest As System.Windows.Forms.DataGrid.HitTestInfo
    ' Use the DataGrid control's HitTest method with the x and y properties.
    myHitTest = dataGrid1.HitTest(e.X, e.Y)
    Console.WriteLine(myHitTest)
    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)))
End Sub 'dataGrid1_MouseDown


Private Function ReturnHitTest(hit As System.Windows.Forms.DataGrid.HitTestType) As String
    ' Use this function to return the part of the grid clicked.   
    Select Case hit
        Case System.Windows.Forms.DataGrid.HitTestType.Cell
                Return "Cell"
        
        Case System.Windows.Forms.DataGrid.HitTestType.Caption
                Return "Caption"
        
        Case System.Windows.Forms.DataGrid.HitTestType.ColumnHeader
                Return "ColumnHeader"
        
        Case System.Windows.Forms.DataGrid.HitTestType.ColumnResize
                Return "Resize"
        
        Case System.Windows.Forms.DataGrid.HitTestType.ParentRows
                Return "ParentRows"
        
        Case System.Windows.Forms.DataGrid.HitTestType.RowHeader
                Return "RowHeader"
        
        Case System.Windows.Forms.DataGrid.HitTestType.RowResize
                Return "RowResize"
        
        Case System.Windows.Forms.DataGrid.HitTestType.None
                Return "None"
        Case Else
                Return "Unknown"
    End Select
End Function 'ReturnHitTest

注解

使用此枚举的成员来确定单击网格中的部分。Use the members of this enumeration to determine which part of the grid has been clicked. Type的属性DataGrid.HitTestInfo返回DataGrid.HitTestTypeThe Type property of a DataGrid.HitTestInfo returns a DataGrid.HitTestType. DataGrid.HitTestInfo创建通过调用HitTest方法的System.Windows.Forms.DataGrid控件。The DataGrid.HitTestInfo is created by invoking the HitTest method of a System.Windows.Forms.DataGrid control.

适用于

另请参阅