Windows Forms DataGridView Denetiminde Sütun Türleri

DataGridViewDenetim, bilgilerini göstermek ve kullanıcıların bilgileri değiştirmesini veya eklemesini sağlamak için çeşitli sütun türlerini kullanır.

Bir DataGridView denetimi bağladığınızda ve AutoGenerateColumns özelliğini olarak ayarladığınızda true sütunlar, bağlı veri kaynağında bulunan veri türlerine uygun varsayılan sütun türleri kullanılarak otomatik olarak oluşturulur.

Ayrıca, herhangi bir sütun sınıfının örneklerini oluşturup özelliği tarafından döndürülen koleksiyona ekleyebilirsiniz Columns . Bu örnekleri ilişkisiz sütunlar olarak kullanılmak üzere oluşturabilir veya el ile bağlayabilirsiniz. El ile bağlantılı sütunlar, örneğin, bir türün otomatik olarak oluşturulan sütununu başka bir tür sütunuyla değiştirmek istediğinizde yararlıdır.

Aşağıdaki tabloda, denetimde kullanıma sunulan çeşitli sütun sınıfları açıklanmaktadır DataGridView .

Sınıf Açıklama
DataGridViewTextBoxColumn Metin tabanlı değerlerle kullanılır. Sayılara ve dizelere bağlamada otomatik olarak oluşturulur.
DataGridViewCheckBoxColumn BooleanVe değerleri ile kullanılır CheckState . Bu türlerin değerlerine bağlanırken otomatik olarak oluşturulur.
DataGridViewImageColumn Görüntüleri göstermek için kullanılır. Bayt dizileri, nesneleri veya nesneleri bağlamada otomatik olarak oluşturulur Image Icon .
DataGridViewButtonColumn Hücrelerde düğmeleri göstermek 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östermek için kullanılır. Bağlama sırasında otomatik olarak oluşturulmaz. Genellikle veri ile bağlantılı olarak.
DataGridViewLinkColumn Hücrelerdeki bağlantıları göstermek için kullanılır. Bağlama sırasında otomatik olarak oluşturulmaz. Genellikle veri ile bağlantılı olarak.
Özel sütun türü DataGridViewColumnÖzel görünüm, davranış veya barındırılan denetimler sağlamak için sınıfı 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 . nasıl yapılır: davranış ve görünümünü genişleterek Windows Forms DataGridView denetimindeki hücreleri ve sütunları özelleştirme

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, TextBox etkin hücrede kullanıcıların hücre değerini değiştirmesine olanak sağlayan bir denetim görüntülenir.

Hücre değerleri, ekran için otomatik olarak dizelere dönüştürülür. Kullanıcı tarafından girilen veya değiştirilen değerler, uygun veri türünün bir hücre değeri oluşturacak şekilde otomatik olarak ayrıştırılır. Denetimin ve olaylarını işleyerek bu dönüşümleri özelleştirebilirsiniz CellFormatting CellParsing DataGridView .

Sütunun özelliğinde bir sütunun hücre değeri veri türü belirtilir ValueType .

DataGridViewCheckBoxColumn

, DataGridViewCheckBoxColumn Boolean Ve değerleri ile kullanılır CheckState . Boolean değerler, özelliğin değerine bağlı olarak iki durumlu veya üç durumlu onay kutusu olarak görüntülenir ThreeState . Sütun CheckState değerlere bağlandığında, ThreeState özellik değeri true Varsayılan olarak olur.

Genellikle, onay kutusu hücre değerleri depolama için, diğer veriler gibi veya toplu işlemler gerçekleştirmek üzere tasarlanmıştır. Kullanıcılar bir onay kutusu hücresine tıkladığınızda hemen yanıt vermek istiyorsanız, CellClick olayı işleyebilirsiniz, ancak bu olay hücre değeri güncellenmeye başlamadan önce oluşur. Tıklama sırasında yeni değere ihtiyacınız varsa, tek bir seçenek, beklenen değerin geçerli değere göre ne olacağını hesaplamalıdır. Başka bir yaklaşım ise değişikliği hemen yürütmeniz ve CellValueChanged ona yanıt vermek için olayı işleymelidir. Hücre tıklandığında değişikliği yürütmek için olayı işlemeniz gerekir CurrentCellDirtyStateChanged . İşleyicide, geçerli hücre bir onay kutusu hücresi ise, CommitEdit yöntemi çağırın ve Commit değeri geçirin.

DataGridViewImageColumn

DataGridViewImageColumnGörüntüleri göstermek için kullanılır. Resim sütunları bir veri kaynağından otomatik olarak doldurulabilir, İlişkisiz sütunlarda el ile doldurulabilir veya olay için bir işleyicide dinamik olarak doldurulabilir CellFormatting .

Bir veri kaynağından bir görüntü sütununun otomatik olarak popülasyon, sınıf tarafından desteklenen tüm biçimler Image ve Microsoft® Access ve Northwind örnek veritabanı tarafından kullanılan OLE resim biçimi dahil olmak üzere çeşitli görüntü biçimlerinde bayt dizileri ile birlikte çalışarak.

Bir görüntü sütununu el ile doldurmak DataGridViewButtonColumn , bir, ancak özelleştirilmiş bir görünümle işlevlerini sağlamak istediğinizde faydalıdır. DataGridView.CellClickBir resim hücresinin içindeki tıklamaların yanıt vermesi için olayı işleyebilirsiniz.

Olay için bir işleyici içindeki bir görüntü sütununun hücrelerini doldurmak, CellFormatting görüntü dışı biçimlerdeki Hesaplanmış değerler veya değerler için görüntü sağlamak istediğinizde faydalıdır. Örneğin, ve gibi dize değerleri içeren bir "risk" sütununuz olabilir "high" "middle" ve "low" simgeler olarak görüntülenmesini isteyebilirsiniz. Alternatif olarak, görüntülerin ikili içeriği yerine yüklenmesi gereken görüntülerin konumlarını içeren bir "Image" sütunu olabilir.

DataGridViewButtonColumn

İle DataGridViewButtonColumn , düğmeleri içeren bir hücre sütununu görüntüleyebilirsiniz. Bu, kullanıcılarınızın belirli kayıtlar üzerinde (sipariş yerleştirme veya alt kayıtları ayrı bir pencereye görüntüleme gibi) eylemleri gerçekleştirmesi için kolay bir yol sağlamak istediğinizde yararlıdır.

Bir denetimi veri bağlama sırasında düğme sütunları otomatik olarak oluşturulmaz DataGridView . Düğme sütunlarını kullanmak için bunları el ile oluşturmanız ve özelliği tarafından döndürülen koleksiyona eklemeniz gerekir DataGridView.Columns .

Olayı işleyerek düğme hücrelerinde Kullanıcı tıklamalarına yanıt verebilirsiniz DataGridView.CellClick .

DataGridViewComboBoxColumn

İle DataGridViewComboBoxColumn , açılan liste kutuları içeren bir hücre sütununu görüntüleyebilirsiniz. Bu, Northwind örnek veritabanındaki Products tablosunun Kategori sütunu gibi yalnızca belirli değerleri içerebilen alanlarda veri girişi için yararlıdır.

Tüm hücreler için kullanılan aşağı açılan listeyi, ComboBox özelliği tarafından döndürülen koleksiyon aracılığıyla el ile veya,, Items DataSource ve özellikleri aracılığıyla bir veri kaynağına bağlayarak, bir açılan listeyi doldurmanızda kullanabileceğiniz şekilde doldurabilirsiniz DisplayMember ValueMember . Daha fazla bilgi için bkz. ComboBox denetimi.

DataGridViewÖğesinin özelliğini ayarlayarak, gerçek hücre değerlerini denetim tarafından kullanılan veri kaynağına bağlayabilirsiniz DataPropertyName System.Windows.Forms.DataGridViewComboBoxColumn .

Bir denetim veri bağlama sırasında Birleşik giriş kutusu sütunları otomatik olarak oluşturulmaz DataGridView . 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 eklemeniz gerekir Columns .

DataGridViewLinkColumn

İle DataGridViewLinkColumn , köprü içeren bir hücre sütununu görüntüleyebilirsiniz. Bu, veri kaynağındaki URL değerleri için veya alt kayıtlarla bir pencere açmak gibi özel davranışlar için düğme sütununa alternatif olarak faydalıdır.

Bağlantı sütunları, bir denetim veri bağlama sırasında otomatik olarak oluşturulmaz DataGridView . Bağlantı sütunlarını kullanmak için bunları el ile oluşturmanız ve özelliği tarafından döndürülen koleksiyona eklemeniz gerekir Columns .

Olayı işleyerek, bağlantılara Kullanıcı tıklamasına yanıt verebilirsiniz CellContentClick . Bu olay, CellClick CellMouseClick bir kullanıcı hücrede herhangi bir yere tıkladığında meydana gelen ve olaylarından farklıdır.

DataGridViewLinkColumnSınıfı, tıklandıklarında ve sonrasında bağlantıların görünümünü değiştirmek için çeşitli özellikler sağlar.

Ayrıca bkz.