DataGrid.HitTest 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取屏幕上指定点的 DataGrid 控件的信息。
重载
HitTest(Int32, Int32) |
使用传递给方法的 x 和 y 坐标获取信息(如网格上被单击点的行号和列号)。 |
HitTest(Point) |
获取有关使用特定 Point 的网格的信息(如网格中被单击点的行号和列号)。 |
HitTest(Int32, Int32)
使用传递给方法的 x 和 y 坐标获取信息(如网格上被单击点的行号和列号)。
public:
System::Windows::Forms::DataGrid::HitTestInfo ^ HitTest(int x, int y);
public System.Windows.Forms.DataGrid.HitTestInfo HitTest (int x, int y);
member this.HitTest : int * int -> System.Windows.Forms.DataGrid.HitTestInfo
Public Function HitTest (x As Integer, y As Integer) As DataGrid.HitTestInfo
参数
- x
- Int32
坐标的水平位置。
- y
- Int32
坐标的垂直位置。
返回
一个 DataGrid.HitTestInfo,它包含有关网格中被单击部分的信息。
示例
下面的代码示例在用户单击网格时发生的事件中使用 HitTest 方法。
Private Sub DataGrid1_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs)
Dim myGrid As DataGrid = CType(sender, DataGrid)
Dim hti As System.Windows.Forms.DataGrid.HitTestInfo
hti = myGrid.HitTest(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
注解
DataGrid.HitTestInfo与 HitTest 控件的 System.Windows.Forms.DataGrid 方法结合使用,用于确定用户已单击控件的System.Windows.Forms.DataGrid哪个部分。 包含 DataGrid.HitTestInfo 所单击的网格的行、列和部分。 此外, Type 属性返回 DataGrid.HitTestType 枚举。
方法HitTest采用控件的 DragDrop、MouseMoveDragEnterMouseDownDragOver、 MouseUp 和 事件提供的 System.Windows.Forms.DataGrid x 和 MouseWheel y 参数。
另请参阅
适用于
HitTest(Point)
获取有关使用特定 Point 的网格的信息(如网格中被单击点的行号和列号)。
public:
System::Windows::Forms::DataGrid::HitTestInfo ^ HitTest(System::Drawing::Point position);
public System.Windows.Forms.DataGrid.HitTestInfo HitTest (System.Drawing.Point position);
member this.HitTest : System.Drawing.Point -> System.Windows.Forms.DataGrid.HitTestInfo
Public Function HitTest (position As Point) As DataGrid.HitTestInfo
参数
返回
一个 DataGrid.HitTestInfo,它包含有关该网格的特定信息。
示例
下面的代码示例使用 HitTest 中的 方法,当用户单击网格时发生。
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
注解
DataGrid.HitTestInfo与 HitTest 控件的 System.Windows.Forms.DataGrid 方法结合使用,用于确定用户已单击控件的System.Windows.Forms.DataGrid哪个部分。 包含 DataGrid.HitTestInfo 所单击的网格的行、列和部分。 此外, Type 属性返回 DataGrid.HitTestType 枚举。
方法HitTest采用控件的 DragDrop、MouseMoveDragEnterMouseDownDragOver、 MouseUp 和 事件提供的 System.Windows.Forms.DataGrid x 和 MouseWheel y 参数。