DataGrid.HitTestType Enumeração
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Especifica a parte do controle DataGrid em que o usuário clicou.
Essa enumeração dá suporte a uma combinação bit a bit dos valores de membro.
public: enum class DataGrid::HitTestType
[System.Flags]
public enum DataGrid.HitTestType
[<System.Flags>]
type DataGrid.HitTestType =
Public Enum DataGrid.HitTestType
- Herança
- Atributos
Campos
Caption | 32 | A legenda do controle DataGrid. |
Cell | 1 | Uma célula no controle DataGrid. |
ColumnHeader | 2 | Um cabeçalho de coluna no controle DataGrid. |
ColumnResize | 8 | A borda da coluna, que é a linha entre os cabeçalhos de coluna. Ela pode ser arrastada para redimensionar a largura de uma coluna. |
None | 0 | A área de tela de fundo, visível quando o controle não contém nenhuma tabela, algumas linhas ou quando uma tabela é rolada até sua parte inferior. |
ParentRows | 64 | Na seção de linha pai do controle DataGrid. A linha pai exibe informações de ou sobre a tabela pai da tabela filho atualmente exibida, como o nome da tabela pai, nomes de coluna e valores do registro pai. |
RowHeader | 4 | Um cabeçalho de linha no controle DataGrid. |
RowResize | 16 | A borda da linha, que é a linha entre os cabeçalhos de linha de grade. Ela pode ser arrastada para redimensionar altura de uma linha. |
Exemplos
O exemplo a seguir usa o HitTest método em um MouseDown evento para retornar o DataGrid.HitTestInfo. A linha, a coluna e a parte da grade são impressas.
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
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
Comentários
Use os membros dessa enumeração para determinar qual parte da grade foi clicada. A Type propriedade de um DataGrid.HitTestInfo retorna um DataGrid.HitTestType. O DataGrid.HitTestInfo é criado invocando o HitTest método de um System.Windows.Forms.DataGrid controle .