DataGridView.CellMouseClick Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит всякий раз, когда пользователь щелкает мышью в каком-либо месте ячейки.
public:
event System::Windows::Forms::DataGridViewCellMouseEventHandler ^ CellMouseClick;
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
Тип события
Примеры
В следующем примере кода показано использование этого элемента. В этом примере обработчик событий сообщает о возникновении CellMouseClick события. Этот отчет поможет вам узнать, когда происходит событие, и поможет вам в отладке. Чтобы сообщить о нескольких событиях или о событиях, которые происходят часто, рекомендуется заменить MessageBox.ShowConsole.WriteLine сообщение или добавить его в многостроочный TextBox.
Чтобы выполнить пример кода, вставьте его в проект, содержащий экземпляр типа DataGridView с именем DataGridView1
. Затем убедитесь, что обработчик событий связан с событием CellMouseClick .
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
Комментарии
Это событие возникает, когда пользователь щелкает любой из кнопок мыши. Используйте свойство , MouseEventArgs.Button чтобы определить, какая кнопка была нажата.
Для обнаружения щелчков содержимого ячейки, например кнопки или ссылки в ячейке CellContentClick , используйте событие .
Обработчик для этого события получает индекс столбца и индекс строки положения указателя мыши.
При щелчках в DataGridViewCheckBoxCellэто событие происходит до изменения значения поля проверка, поэтому если вы не хотите вычислять ожидаемое значение на основе текущего значения, обычно это событие обрабатываетсяCellValueChanged. Так как это событие возникает только при фиксации указанного пользователем значения, которое обычно происходит при выходе фокуса из ячейки, необходимо также обрабатывать CurrentCellDirtyStateChanged событие . В этом обработчике, если текущая ячейка является ячейкой проверка box, вызовите CommitEdit метод и передайте Commit значение .
Дополнительные сведения об обработке событий см. в разделе Обработка и вызов событий.