Windows Forms DataGridView Denetiminde Sütun Türleri
Denetim, DataGridView bilgilerini görüntülemek ve kullanıcıların bilgileri değiştirmesine veya eklemesine olanak tanımak için birkaç sütun türü kullanır.
Bir DataGridView denetimi bağladığınızda ve özelliğini olarak true
ayarladığınızdaAutoGenerateColumns, ilişkili veri kaynağında yer alan veri türlerine uygun varsayılan sütun türleri kullanılarak sütunlar otomatik olarak oluşturulur.
Ayrıca, sütun sınıflarından herhangi birinin örneklerini kendiniz oluşturabilir ve bunları özelliği tarafından döndürülen koleksiyona Columns ekleyebilirsiniz. Bu örnekleri ilişkisiz sütunlar olarak kullanmak üzere oluşturabilir veya el ile bağlayabilirsiniz. El ile bağlanan sütunlar, örneğin otomatik olarak oluşturulan bir sütunu başka türde bir sütunla değiştirmek istediğinizde kullanışlıdır.
Aşağıdaki tabloda, denetimde DataGridView kullanılabilecek çeşitli sütun sınıfları açıklanmaktadır.
Sınıf | Tanım |
---|---|
DataGridViewTextBoxColumn | Metin tabanlı değerlerle kullanılır. Sayılara ve dizelere bağlanırken otomatik olarak oluşturulur. |
DataGridViewCheckBoxColumn | ve CheckState değerleriyle kullanılırBoolean. Bu türlerdeki değerlere bağlanırken otomatik olarak oluşturulur. |
DataGridViewImageColumn | Görüntüleri görüntülemek için kullanılır. Bayt dizilerine, Image nesnelere veya Icon nesnelere bağlanırken otomatik olarak oluşturulur. |
DataGridViewButtonColumn | Hücrelerdeki düğmeleri görüntülemek için kullanılır. Bağlama sırasında otomatik olarak oluşturulmaz. Genellikle ilişkisiz sütunlar olarak kullanılır. |
DataGridViewComboBoxColumn | Hücrelerde açılan listeleri görüntülemek için kullanılır. Bağlama sırasında otomatik olarak oluşturulmaz. Genellikle verilere el ile bağlıdır. |
DataGridViewLinkColumn | Hücrelerdeki bağlantıları görüntülemek için kullanılır. Bağlama sırasında otomatik olarak oluşturulmaz. Genellikle verilere el ile bağlıdır. |
Özel sütun türünüz | Özel görünüm, davranış veya barındırılan DataGridViewColumn denetimler sağlamak için sınıfını veya türetilmiş sınıflarından herhangi birini devralarak kendi sütun sınıfınızı oluşturabilirsiniz. Daha fazla bilgi için bkz . How to: Customize Cells and Columns in the Windows Forms DataGridView Control by Extending The Behavior and Appearance |
Bu sütun türleri aşağıdaki bölümlerde daha ayrıntılı olarak açıklanmıştır.
Datagridviewtextboxcolumn
DataGridViewTextBoxColumn, sayılar ve dizeler gibi metin tabanlı değerlerle kullanılmak üzere genel amaçlı bir sütun türüdür. Düzenleme modunda, etkin hücrede kullanıcıların hücre değerini değiştirmesini sağlayan bir TextBox denetim görüntülenir.
Hücre değerleri otomatik olarak görüntülenmek üzere dizelere dönüştürülür. Kullanıcı tarafından girilen veya değiştirilen değerler, uygun veri türünde bir hücre değeri oluşturmak için otomatik olarak ayrıştırılır. Denetimin CellFormatting ve CellParsing olaylarını DataGridView işleyerek bu dönüştürmeleri özelleştirebilirsiniz.
Bir sütunun hücre değeri veri türü, sütunun ValueType özelliğinde belirtilir.
Datagridviewcheckboxcolumn
DataGridViewCheckBoxColumn ve CheckState değerleriyle Boolean kullanılır. Boolean değerler, özelliğin değerine ThreeState bağlı olarak iki durumlu veya üç durumlu onay kutuları olarak görüntülenir. Sütun değerlere CheckState bağlı olduğunda, ThreeState özellik değeri varsayılan olarakdır true
.
Genellikle, onay kutusu hücre değerleri diğer veriler gibi depolamaya veya toplu işlemler gerçekleştirmeye yöneliktir. Kullanıcılar bir onay kutusu hücresine tıkladığında hemen yanıt vermek istiyorsanız, olayı işleyebilirsiniz CellClick , ancak bu olay hücre değeri güncelleştirilmeden önce gerçekleşir. Tıklama sırasında yeni değere ihtiyacınız varsa, bir seçenek, beklenen değerin geçerli değere göre hesaplanmasıdır. Bir diğer yaklaşım da değişikliği hemen işlemek ve olaya yanıt vermek için olayı işlemektir CellValueChanged . Hücreye tıklandığında değişikliği işlemek için olayı işlemeniz CurrentCellDirtyStateChanged gerekir. İşleyicide, geçerli hücre bir onay kutusu hücresiyse yöntemini çağırın CommitEdit ve değeri geçirin Commit .
Datagridviewımagecolumn
DataGridViewImageColumn, görüntüleri görüntülemek için kullanılır. Görüntü sütunları bir veri kaynağından otomatik olarak doldurulabilir, ilişkisiz sütunlar için el ile doldurulabilir veya olay işleyicisinde CellFormatting dinamik olarak doldurulabilir.
Bir veri kaynağındaki görüntü sütununun otomatik popülasyonu, sınıfı tarafından desteklenen tüm biçimler ve Microsoft® Access ve Northwind örnek veritabanı tarafından Image kullanılan OLE Resim biçimi de dahil olmak üzere çeşitli görüntü biçimlerindeki bayt dizileriyle çalışır.
Görüntü sütununu el ile doldurma, bir işlevinin işlevselliğini DataGridViewButtonColumnsağlamak ancak özelleştirilmiş bir görünüme sahip olmak istediğinizde kullanışlıdır. Bir görüntü hücresinde DataGridView.CellClick tıklamaları yanıtlamak için olayı işleyebilirsiniz.
Olay için CellFormatting bir görüntü sütununun hücrelerinin bir işleyicide doldurulması, hesaplanmış değerler veya görüntü olmayan biçimlerdeki değerler için görüntü sağlamak istediğinizde kullanışlıdır. Örneğin, , "middle"
gibi dize değerlerini içeren ve "low"
simge olarak "high"
görüntülemek istediğiniz bir "Risk" sütuna sahip olabilirsiniz. Alternatif olarak, görüntülerin ikili içeriği yerine yüklenmesi gereken görüntülerin konumlarını içeren bir "Görüntü" sütuna sahip olabilirsiniz.
Datagridviewbuttoncolumn
DataGridViewButtonColumnile, düğme içeren bir hücre sütunu görüntüleyebilirsiniz. Bu, kullanıcılarınızın belirli kayıtlarda sipariş verme veya alt kayıtları ayrı bir pencerede görüntüleme gibi eylemleri gerçekleştirmesi için kolay bir yol sağlamak istediğinizde kullanışlıdır.
Bir denetimin veri bağlaması DataGridView yapıldığında düğme sütunları otomatik olarak oluşturulmaz. Düğme sütunlarını kullanmak için bunları el ile oluşturmanız ve özelliği tarafından döndürülen koleksiyona DataGridView.Columns eklemeniz gerekir.
Olayı işleyerek DataGridView.CellClick düğme hücrelerindeki kullanıcı tıklamalarını yanıtlayabilirsiniz.
DataGridViewComboBoxColumn
DataGridViewComboBoxColumnile, açılan liste kutuları içeren bir hücre sütunu görüntüleyebilirsiniz. Bu, Northwind örnek veritabanındaki Products tablosunun Category sütunu gibi yalnızca belirli değerleri içerebilen alanlardaki veri girişi için kullanışlıdır.
Tüm hücreler için kullanılan açılan listeyi, özellik tarafından Items döndürülen koleksiyon aracılığıyla el ile veya , DisplayMemberve ValueMember özellikleri aracılığıyla DataSourcebir veri kaynağına bağlayarak açılan listeyi dolduracağınız şekilde doldurabilirsinizComboBox. Daha fazla bilgi için bkz . ComboBox Denetimi.
özelliğini System.Windows.Forms.DataGridViewComboBoxColumnayarlayarak DataPropertyName gerçek hücre değerlerini denetim tarafından DataGridView kullanılan veri kaynağına bağlayabilirsiniz.
Birleşik giriş kutusu sütunları, bir DataGridView denetimin veri bağlaması sırasında otomatik olarak oluşturulmaz. Birleşik giriş kutusu sütunlarını kullanmak için bunları el ile oluşturmanız ve özelliği tarafından döndürülen koleksiyona Columns eklemeniz gerekir.
DataGridViewLinkColumn
DataGridViewLinkColumnile, köprü içeren bir hücre sütunu görüntüleyebilirsiniz. Bu, veri kaynağındaki URL değerleri için veya alt kayıtlarla bir pencere açma gibi özel davranışlar için düğme sütununa alternatif olarak kullanışlıdır.
Bir denetimin veri bağlaması DataGridView yapıldığında bağlantı sütunları otomatik olarak oluşturulmaz. Bağlantı sütunlarını kullanmak için bunları el ile oluşturmanız ve özelliği tarafından döndürülen koleksiyona Columns eklemeniz gerekir.
Olayı işleyerek CellContentClick bağlantılara kullanıcı tıklamalarını yanıtlayabilirsiniz. Bu olay, bir kullanıcı hücrenin CellClick herhangi bir yerine tıkladığında oluşan ve CellMouseClick olaylarından farklıdır.
DataGridViewLinkColumn sınıfı, bağlantıların tıklanmadan önce, sırasında ve tıklandıktan sonra görünümünü değiştirmek için çeşitli özellikler sağlar.
Ayrıca bkz.
- DataGridView
- DataGridViewColumn
- DataGridViewButtonColumn
- DataGridViewCheckBoxColumn
- DataGridViewComboBoxColumn
- DataGridViewImageColumn
- DataGridViewTextBoxColumn
- DataGridViewLinkColumn
- DataGridView Denetimi
- Nasıl yapılır: Windows Forms DataGridView Denetiminin Hücrelerinde Resim Görüntüleme
- Nasıl yapılır: Windows Forms DataGridView Denetiminde Görüntü Sütunlarıyla Çalışma
- Windows Forms DataGridView Denetimini Özelleştirme
.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