Поделиться через


DataGrid.HitTest Метод

Определение

Получает сведения об элементе управления 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сочетании с методом HitTestSystem.Windows.Forms.DataGrid элемента управления используется для определения того, какую часть System.Windows.Forms.DataGrid элемента управления щелкнул пользователь. содержит DataGrid.HitTestInfo строку, столбец и часть сетки, которую вы нажали. Кроме того, Type свойство возвращает перечисление DataGrid.HitTestType .

Метод HitTest принимает аргументы x и y, предоставляемые System.Windows.Forms.DataGrid событиями , DragEnter, DragOver, MouseDownMouseMove, MouseUp и MouseWheel элемента управления DragDrop.

См. также раздел

Применяется к

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

Параметры

position
Point

Объект Point, представляющий одну пару координат (x, y).

Возвращаемое значение

Объект 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сочетании с методом HitTestSystem.Windows.Forms.DataGrid элемента управления используется для определения того, какую часть System.Windows.Forms.DataGrid элемента управления щелкнул пользователь. содержит DataGrid.HitTestInfo строку, столбец и часть сетки, которую вы нажали. Кроме того, Type свойство возвращает перечисление DataGrid.HitTestType .

Метод HitTest принимает аргументы x и y, предоставляемые System.Windows.Forms.DataGrid событиями , DragEnter, DragOver, MouseDownMouseMove, MouseUp и MouseWheel элемента управления DragDrop.

См. также раздел

Применяется к