2011-04-12 16 views
16

Veri kutusuna bir onay kutusunu nasıl ekleyebilirim ve bunu veri kılavuzuna nasıl bağlarım?Veri kutusuna bir onay kutusu denetimi nasıl eklenir?

DataTable ColumnList = new DataTable(); 
ColumnList.Columns.Add("Column Fields"); 

int j = 1, i = 0; 
CheckBox colCheckbox = new CheckBox(); 
foreach (Columns col in ColumnNames) 
{ 
    colCheckbox.Name = col.ColumnName;  
    ColumnList.Rows.Add(colCheckbox); // This is getting displayed as System.Windows.Forms.CheckBox,CheckState=0 
} 

Lütfen yardım edin.

+0

Bu winform'lar mı? WPF? asp.net? –

+0

pencerelerini oluşturur – NewBie

+0

Şimdiye kadar neler var? –

cevap

40

DataTable'da bir boolean alanına (sütun) sahip olmanız gerekir. DataTridView DataGridView bağlandığınızda, bu boolean alanı için bir onay kutusu sütun oluşturulacak.

Örnek Kod:

var dt = new DataTable(); 
dt.Columns.Add(new DataColumn("Selected", typeof(bool))); //this will show checkboxes 
dt.Columns.Add(new DataColumn("Text", typeof(string))); //this will show text 

var dgv = new DataGridView(); 
dgv.DataSource = dt; 

Bu dgv DataGridView dt DataTable bağlamak olacaktır. DataGridView otomatik olarak ilk DataColumn (Seçili) ve ikinci DataColumn için DataGridViewTextBoxColumn (Metin) için bir DataGridViewCheckBoxColumn görüntüler.

+1

+1. Cevabınıza, otomatik olarak oluşturulan görsel sütunun bir ['DataGridViewCheckBoxColumn'] (http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewcheckboxcolumn.aspx) olduğunu ekledim. OP'nin el ile eklemek istemesi durumunda. DataGridViewCheckBoxColumn kullanıldığında, – stakx

+0

hem CheckBox hem de metni bir sütunda görüntülemek mümkün mü? Her ikisine nasıl bağlanabilirim? – NewBie

+1

DataGridViewCheckBoxColumn'ta metin bulunamaz. Metin farklı bir sütunda görünecektir. Bunu nasıl yapacağımı görmek için revizyonuma bakın. –

-1

Sütunun türünü belirtmeniz gerekir.

ColumnList.Columns.Add("Column Fields", gettype(CheckBox)); 

Neden bir DataTable'a denetim eklemek istiyorsunuz? Neden sadece bir dize veya tam sayı değil?

+0

Ancak bu, veri kılavuzunda herhangi bir onay kutusu göstermiyor. Onay kutularına bağlı bir metinle onay kutularını ızgaraya bağlamanız gerekir. – NewBie

+0

DataGrid'e bir DataGridCheckBoxColumn eklemeniz ve bu sütunu DataTable'daki bir alana bağlamanız gerekir. DataTable'a bir onay kutusu eklemenize gerek yoktur. – Rhapsody

İlgili konular