Partilhar via


DataGrid.HitTest Método

Definição

Obtém informações sobre o controle DataGrid em um ponto especificado na tela.

Sobrecargas

HitTest(Int32, Int32)

Obtém informações, como o número da linha e da coluna de um ponto clicado na grade, usando a coordenada x e y passada para o método.

HitTest(Point)

Obtém informações, como o número da linha e da coluna de um ponto clicado na grade, sobre a grade usando um Point específico.

HitTest(Int32, Int32)

Obtém informações, como o número da linha e da coluna de um ponto clicado na grade, usando a coordenada x e y passada para o método.

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

Parâmetros

x
Int32

A posição horizontal da coordenada.

y
Int32

A posição vertical da coordenada.

Retornos

Um DataGrid.HitTestInfo que contém informações sobre a parte clicada da grade.

Exemplos

O exemplo de código a seguir usa o HitTest método em um evento que ocorre quando o usuário clica na grade.

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

Comentários

O DataGrid.HitTestInfo, em conjunto com o HitTest método do System.Windows.Forms.DataGrid controle, é usado para determinar qual parte de um System.Windows.Forms.DataGrid controle o usuário clicou. O DataGrid.HitTestInfo contém a linha, a coluna e a parte da grade que foi clicada. Além disso, a Type propriedade retorna uma DataGrid.HitTestType enumeração.

O HitTest método usa um argumento x e y fornecido pelos System.Windows.Forms.DataGrid eventos , DragEnter, DragOver, MouseDown, MouseMoveMouseUp e MouseWheel do DragDropcontrole.

Confira também

Aplica-se a

HitTest(Point)

Obtém informações, como o número da linha e da coluna de um ponto clicado na grade, sobre a grade usando um Point específico.

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

Parâmetros

position
Point

Um Point que representa uma única coordenada x, y.

Retornos

Um DataGrid.HitTestInfo que contém informações específicas sobre a grade.

Exemplos

O exemplo de código a seguir usa o HitTest método em ocorre quando um usuário clica em uma grade.

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

Comentários

O DataGrid.HitTestInfo, em conjunto com o HitTest método do System.Windows.Forms.DataGrid controle, é usado para determinar qual parte de um System.Windows.Forms.DataGrid controle o usuário clicou. O DataGrid.HitTestInfo contém a linha, a coluna e a parte da grade que foi clicada. Além disso, a Type propriedade retorna uma DataGrid.HitTestType enumeração.

O HitTest método usa um argumento x e y fornecido pelos System.Windows.Forms.DataGrid eventos , DragEnter, DragOver, MouseDown, MouseMoveMouseUp e MouseWheel do DragDropcontrole.

Confira também

Aplica-se a