Windows Forms DataGridView Denetimindeki Seçim Modları
Bazen uygulamanızın bir denetimdeki kullanıcı seçimlerini temel alan eylemler gerçekleştirmesini DataGridView istersiniz. Eylemlere bağlı olarak, mümkün olan seçim türlerini kısıtlamak isteyebilirsiniz. Örneğin, uygulamanızın seçili durumdaki kayıt için bir rapor yazdırabildiğini varsayalım. Bu durumda, bir satırın içinde herhangi bir yere tıklanması her zaman satırın DataGridView tamamını seçecek ve aynı anda yalnızca bir satırın seçilebileceği şekilde denetimi yapılandırmak isteyebilirsiniz.
özelliğini aşağıdaki DataGridViewSelectionMode numaralandırma değerlerinden birine ayarlayarak DataGridView.SelectionMode izin verilen seçimleri belirtebilirsiniz.
DataGridViewSelectionMode değeri | Tanım |
---|---|
CellSelect | Bir hücreye tıklanması hücreyi seçer. Satır ve sütun başlıkları seçim için kullanılamaz. |
ColumnHeaderSelect | Bir hücreye tıklanması hücreyi seçer. Bir sütun üst bilgisine tıklanması sütunun tamamını seçer. Sütun başlıkları sıralama için kullanılamaz. |
FullColumnSelect | Bir hücreye veya sütun başlığına tıklanması sütunun tamamını seçer. Sütun başlıkları sıralama için kullanılamaz. |
FullRowSelect | Bir hücreye veya satır üst bilgisine tıklanması satırın tamamını seçer. |
RowHeaderSelect | Varsayılan seçim modu. Bir hücreye tıklanması hücreyi seçer. Bir satır üst bilgisine tıklanması satırın tamamını seçer. |
Dekont
Çalışma zamanında seçim modunun değiştirilmesi geçerli seçimi otomatik olarak temizler.
Varsayılan olarak, kullanıcılar fareyle sürükleyerek, seçimi genişletmek veya değiştirmek için seçerken CTRL veya SHIFT tuşlarına basarak veya denetimdeki tüm hücreleri seçmek için sol üst bilgi hücresine tıklayarak birden çok satır, sütun veya hücre seçebilir. Bu davranışı önlemek için özelliğini olarak false
ayarlayınMultiSelect.
FullRowSelect ve RowHeaderSelect modları, kullanıcıların satırları seçip DELETE tuşuna basarak silmesini sağlar. Kullanıcılar satırları yalnızca geçerli hücre düzenleme modunda olmadığında, AllowUserToDeleteRows özelliği olarak true
ayarlandığında ve temel alınan veri kaynağı kullanıcı temelli satır silmeyi desteklediğinde silebilir. Bu ayarların program aracılığıyla satır silmeyi engellemediğini unutmayın.
Programlı Seçim
Geçerli seçim modu, programlı seçimin ve kullanıcı seçiminin davranışını kısıtlar. Denetimde bulunan DataGridView hücrelerin, satırların veya sütunların Selected
özelliğini ayarlayarak geçerli seçimi program aracılığıyla değiştirebilirsiniz. Seçim moduna bağlı olarak, yöntem aracılığıyla SelectAll denetimdeki tüm hücreleri de seçebilirsiniz. Seçimi temizlemek için yöntemini kullanın ClearSelection .
MultiSelect özelliği olarak true
ayarlanırsa öğesine öğe ekleyebilir DataGridView veya öğesinin özelliğini değiştirerek Selected
bunları seçimden kaldırabilirsiniz. Aksi takdirde, özelliğin bir öğe için olarak true
ayarlanması Selected
diğer öğeleri seçimden otomatik olarak kaldırır.
Özelliğin değerinin değiştirilmesinin CurrentCell geçerli seçimi değiştirmediğini unutmayın.
Denetimin , SelectedRowsve SelectedColumns özellikleri aracılığıyla seçili durumdaki hücrelerin, satırların SelectedCellsveya sütunların DataGridView koleksiyonunu alabilirsiniz. Denetimdeki her hücre seçildiğinde bu özelliklere erişmek verimsizdir. Bu durumda bir performans cezasından kaçınmak için önce yöntemini kullanın AreAllCellsSelected . Ayrıca, seçili hücre, satır veya sütun sayısını belirlemek için bu koleksiyonlara erişmek verimsiz olabilir. Bunun yerine, değerini geçirerek Selected , GetRowCountveya GetColumnCount yöntemini kullanmanız GetCellCountgerekir.
Bahşiş
Seçili hücrelerin program aracılığıyla kullanımını gösteren örnek kod, sınıfa genel bakış bölümünde DataGridView bulunabilir.
Ayrıca bkz.
.NET Desktop feedback
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin