DataGridView.CellMouseClick Evento

Definição

Ocorre sempre que o usuário clica em qualquer lugar de uma célula com o mouse.Occurs whenever the user clicks anywhere on a cell with the mouse.

public:
 event System::Windows::Forms::DataGridViewCellMouseEventHandler ^ CellMouseClick;
public event System.Windows.Forms.DataGridViewCellMouseEventHandler CellMouseClick;
member this.CellMouseClick : System.Windows.Forms.DataGridViewCellMouseEventHandler 
Public Custom Event CellMouseClick As DataGridViewCellMouseEventHandler 

Exemplos

O exemplo de código a seguir demonstra o uso desse membro.The following code example demonstrates the use of this member. No exemplo, um manipulador de eventos relata a ocorrência do evento CellMouseClick.In the example, an event handler reports on the occurrence of the CellMouseClick event. Este relatório ajuda você a aprender quando o evento ocorre e pode ajudá-lo na depuração.This report helps you to learn when the event occurs and can assist you in debugging. Para relatar vários eventos ou eventos que ocorrem com frequência, considere substituir MessageBox.Show por Console.WriteLine ou acrescentar a mensagem a uma @no__t multilinha-2.To report on multiple events or on events that occur frequently, consider replacing MessageBox.Show with Console.WriteLine or appending the message to a multiline TextBox.

Para executar o código de exemplo, Cole-o em um projeto que contém uma instância do tipo DataGridView chamado DataGridView1.To run the example code, paste it into a project that contains an instance of type DataGridView named DataGridView1. Em seguida, verifique se o manipulador de eventos está associado ao evento CellMouseClick.Then ensure that the event handler is associated with the CellMouseClick event.

private void DataGridView1_CellMouseClick(Object sender, DataGridViewCellMouseEventArgs e) {

System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "ColumnIndex", e.ColumnIndex );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "RowIndex", e.RowIndex );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Button", e.Button );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Clicks", e.Clicks );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "X", e.X );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Y", e.Y );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Delta", e.Delta );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Location", e.Location );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "CellMouseClick Event" );
}
Private Sub DataGridView1_CellMouseClick(sender as Object, e as DataGridViewCellMouseEventArgs) _ 
     Handles DataGridView1.CellMouseClick

    Dim messageBoxVB as New System.Text.StringBuilder()
    messageBoxVB.AppendFormat("{0} = {1}", "ColumnIndex", e.ColumnIndex)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "RowIndex", e.RowIndex)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Button", e.Button)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Clicks", e.Clicks)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "X", e.X)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Y", e.Y)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Delta", e.Delta)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Location", e.Location)
    messageBoxVB.AppendLine()
    MessageBox.Show(messageBoxVB.ToString(),"CellMouseClick Event")

End Sub

Comentários

Esse evento ocorre quando o usuário clica usando qualquer um dos botões do mouse.This event occurs when the user clicks using any of the mouse buttons. Use a propriedade MouseEventArgs.Button para determinar qual botão foi clicado.Use the MouseEventArgs.Button property to determine which button was clicked.

Para detectar cliques no conteúdo de uma célula, como um botão ou link dentro de uma célula, use o evento CellContentClick.To detect clicks on the contents of a cell, such as a button or link within a cell, use the CellContentClick event.

O manipulador para esse evento recebe o índice de coluna e o índice de linha da posição do ponteiro do mouse.The handler for this event receives the column index and row index of the mouse pointer position.

Para cliques em um DataGridViewCheckBoxCell, esse evento ocorre antes que a caixa de seleção mude de valor, portanto, se você não quiser calcular o valor esperado com base no valor atual, normalmente tratará o evento de CellValueChanged em vez disso.For clicks in a DataGridViewCheckBoxCell, this event occurs before the check box changes value, so if you do not want to calculate the expected value based on the current value, you will typically handle the CellValueChanged event instead. Como esse evento ocorre somente quando o valor especificado pelo usuário é confirmado, o que normalmente ocorre quando o foco sai da célula, você também deve manipular o evento CurrentCellDirtyStateChanged.Because that event occurs only when the user-specified value is committed, which typically occurs when focus leaves the cell, you must also handle the CurrentCellDirtyStateChanged event. Nesse manipulador, se a célula atual for uma célula da caixa de seleção, chame o método CommitEdit e passe o valor de Commit.In that handler, if the current cell is a check box cell, call the CommitEdit method and pass in the Commit value.

Para obter mais informações sobre como lidar com eventos, consulte manipulando e gerando eventos.For more information about how to handle events, see Handling and Raising Events.

Aplica-se a

Veja também