DataGridView.CellMouseClick Evento

Definição

Ocorre sempre que o usuário clica em qualquer lugar de uma célula com o mouse.

public event System.Windows.Forms.DataGridViewCellMouseEventHandler CellMouseClick;
public event System.Windows.Forms.DataGridViewCellMouseEventHandler? CellMouseClick;

Tipo de evento

Exemplos

O exemplo de código a seguir demonstra o uso desse membro. No exemplo, um manipulador de eventos relata a ocorrência do CellMouseClick evento. Este relatório ajuda você a aprender quando o evento ocorre e pode ajudá-lo na depuração. Para relatar vários eventos ou eventos que ocorrem com frequência, considere substituir MessageBox.ShowConsole.WriteLine ou acrescentar a mensagem a uma multilinha TextBox.

Para executar o código de exemplo, cole-o em um projeto que contém uma instância do tipo DataGridView chamada DataGridView1. Em seguida, verifique se o manipulador de eventos está associado ao CellMouseClick evento.

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" );
}

Comentários

Esse evento ocorre quando o usuário clica usando qualquer um dos botões do mouse. Use a MouseEventArgs.Button propriedade para determinar qual botão foi clicado.

Para detectar cliques no conteúdo de uma célula, como um botão ou link dentro de uma célula, use o CellContentClick evento .

O manipulador desse evento recebe o índice de coluna e o índice de linha da posição do ponteiro do mouse.

Para cliques em um DataGridViewCheckBoxCell, esse evento ocorre antes que a caixa marcar altere o valor, portanto, se você não quiser calcular o valor esperado com base no valor atual, normalmente manipulará o CellValueChanged evento. 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 CurrentCellDirtyStateChanged evento. Nesse manipulador, se a célula atual for uma célula de caixa marcar, chame o CommitEdit método e passe o Commit valor.

Para obter mais informações sobre como lidar com eventos, consulte Manipulando e levantando eventos.

Aplica-se a

Produto Versões
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

Confira também