Bagikan melalui


Mode Pilihan di Kontrol Formulir Windows DataGridView

Terkadang Anda ingin aplikasi Anda melakukan tindakan berdasarkan pilihan pengguna dalam DataGridView kontrol. Bergantung pada tindakannya, Anda mungkin ingin membatasi jenis pilihan yang mungkin. Misalnya, aplikasi Anda dapat mencetak laporan untuk rekaman yang saat ini dipilih. Dalam hal ini, Anda mungkin ingin mengonfigurasi DataGridView kontrol sehingga mengklik di mana saja dalam baris selalu memilih seluruh baris, dan sehingga hanya satu baris pada satu waktu yang dapat dipilih.

Anda dapat menentukan pilihan yang diizinkan dengan mengatur DataGridView.SelectionMode properti ke salah satu nilai enumerasi berikut DataGridViewSelectionMode .

Nilai DataGridViewSelectionMode Deskripsi
CellSelect Mengklik sel memilihnya. Header baris dan kolom tidak dapat digunakan untuk pilihan.
ColumnHeaderSelect Mengklik sel memilihnya. Mengklik header kolom memilih seluruh kolom. Header kolom tidak dapat digunakan untuk pengurutan.
FullColumnSelect Mengklik sel atau header kolom akan memilih seluruh kolom. Header kolom tidak dapat digunakan untuk pengurutan.
FullRowSelect Mengklik sel atau header baris memilih seluruh baris.
RowHeaderSelect Mode pemilihan default. Mengklik sel memilihnya. Mengklik header baris memilih seluruh baris.

Catatan

Mengubah mode pemilihan pada run time secara otomatis menghapus pilihan saat ini.

Secara default, pengguna dapat memilih beberapa baris, kolom, atau sel dengan menyeret dengan mouse, menekan CTRL atau SHIFT saat memilih untuk memperluas atau mengubah pilihan, atau mengklik sel header kiri atas untuk memilih semua sel dalam kontrol. Untuk mencegah perilaku ini, atur properti ke MultiSelectfalse.

Mode FullRowSelect dan RowHeaderSelect memungkinkan pengguna menghapus baris dengan memilihnya dan menekan tombol DELETE. Pengguna hanya dapat menghapus baris saat sel saat ini tidak dalam mode edit, AllowUserToDeleteRows properti diatur ke true, dan sumber data yang mendasar mendukung penghapusan baris berbasis pengguna. Perhatikan bahwa pengaturan ini tidak mencegah penghapusan baris terprogram.

Pemilihan Terprogram

Mode pilihan saat ini membatasi perilaku pemilihan terprogram serta pilihan pengguna. Anda dapat mengubah pilihan saat ini secara terprogram dengan mengatur Selected properti sel, baris, atau kolom apa pun yang ada di DataGridView kontrol. Anda juga dapat memilih semua sel dalam kontrol melalui SelectAll metode , tergantung pada mode pemilihan. Untuk menghapus pilihan, gunakan ClearSelection metode .

MultiSelect Jika properti diatur ke true, Anda dapat menambahkan DataGridView elemen ke atau menghapusnya dari pilihan dengan mengubah Selected properti elemen. Jika tidak, mengatur Selected properti ke true untuk satu elemen secara otomatis menghapus elemen lain dari pilihan.

Perhatikan bahwa mengubah nilai CurrentCell properti tidak mengubah pilihan saat ini.

Anda dapat mengambil kumpulan sel, baris, atau kolom yang saat ini dipilih melalui SelectedCellsproperti DataGridView , SelectedRows, dan SelectedColumns kontrol. Mengakses properti ini tidak efisien ketika setiap sel dalam kontrol dipilih. Untuk menghindari penalti performa dalam hal ini, gunakan metode terlebih dahulu AreAllCellsSelected . Selain itu, mengakses koleksi ini untuk menentukan jumlah sel, baris, atau kolom yang dipilih tidak efisien. Sebagai gantinya GetCellCount, Anda harus menggunakan metode , GetRowCount, atau GetColumnCount , meneruskan Selected nilai .

Tip

Contoh kode yang menunjukkan penggunaan terprogram sel yang dipilih dapat ditemukan di DataGridView gambaran umum kelas.

Baca juga