2011-01-21 2 views
1

Я заполняю datagridview таблицей данных, заполненной адаптером. У меня есть несколько столбцов, которые являются маленькими. Они используются в качестве флагов, таких как булевы. Как показать эти столбцы как флажки? Обратите внимание, что я не могу изменить тип столбца базы данных на boolean.Столбец флажка в datagridView

ответ

3

Вам просто нужно создать DataGridViewCheckBoxColumn то сказать ему, что это false и что true

this.ckbCol = new System.Windows.Forms.DataGridViewCheckBoxColumn(); 

this.dataGridView.Columns.Add(this.active); 

this.ckbCol.DataPropertyName = "ACTIVE"; //if u want to bind it to a table or something 
this.ckbCol.HeaderText = "Aktiv"; 
this.ckbCol.Name = "Aktiv"; 
//Now the important stuff follows! 
this.ckbCol.FalseValue = "0"; 
this.ckbCol.TrueValue = "1"; 

Это работает очень хорошо для меня, и это даже можно установить его в Дизайнер!

0

Вы можете использовать TemplateColumn с DataBinder.Eval, правильно назначив установленное значение флажку или в обработчике событий RowDataBound, вы можете проверить строку.DataItem, и если ваш столбец «1», вы установите флажок, как отмечено. во втором случае вы получаете ссылку на элемент управления флажком, используя (FindControl («checkboxId») в качестве CheckBox)

0

У вас есть 2 способа сделать это, если я правильно помню свою .Net. Во-первых, простой, не используйте smallint use boolean и покажет вам флажки по умолчанию. Второй - вам нужно сделать gridview программно. Используйте TemplateColumn и привяжите данные программно в RowDataBound. ей это учебник, чтобы помочь вам начать работу http://www.asp.net/data-access/tutorials/adding-a-gridview-column-of-checkboxes-vb

Смежные вопросы