DataGridView.CellMouseClick Kejadian
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Terjadi setiap kali pengguna mengklik di mana saja pada sel dengan mouse.
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
Jenis Acara
Contoh
Contoh kode berikut menunjukkan penggunaan anggota ini. Dalam contoh, penanganan aktivitas melaporkan terjadinya CellMouseClick peristiwa. Laporan ini membantu Anda mempelajari kapan peristiwa terjadi dan dapat membantu Anda dalam penelusuran kesalahan. Untuk melaporkan beberapa peristiwa atau pada peristiwa yang sering terjadi, pertimbangkan untuk mengganti MessageBox.Show dengan Console.WriteLine atau menambahkan pesan ke multibaris TextBox.
Untuk menjalankan kode contoh, tempelkan ke dalam proyek yang berisi instans jenis DataGridView bernama DataGridView1
. Kemudian pastikan bahwa penanganan aktivitas dikaitkan dengan CellMouseClick peristiwa.
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
Keterangan
Kejadian ini terjadi ketika pengguna mengklik menggunakan salah satu tombol mouse. MouseEventArgs.Button Gunakan properti untuk menentukan tombol mana yang diklik.
Untuk mendeteksi klik pada konten sel, seperti tombol atau tautan di dalam sel, gunakan peristiwa tersebut CellContentClick .
Handler untuk kejadian ini menerima indeks kolom dan indeks baris dari posisi penunjuk mouse.
Untuk klik di DataGridViewCheckBoxCell, peristiwa ini terjadi sebelum kotak centang mengubah nilai, jadi jika Anda tidak ingin menghitung nilai yang diharapkan berdasarkan nilai saat ini, Anda biasanya akan menangani CellValueChanged peristiwa sebagai gantinya. Karena peristiwa itu hanya terjadi ketika nilai yang ditentukan pengguna diterapkan, yang biasanya terjadi saat fokus meninggalkan sel, Anda juga harus menangani peristiwa tersebut CurrentCellDirtyStateChanged . Di handler tersebut, jika sel saat ini adalah sel kotak centang, panggil CommitEdit metode dan berikan nilainya Commit .
Untuk informasi selengkapnya tentang cara menangani peristiwa, lihat Menangani dan Menaikkan Peristiwa.