У меня есть Infragistics WinGrid (UltraGrid, UltraWinGrid, что угодно...) с несвязанным столбцом. У него есть Style = Checkbox
и DataType = System.Boolean
. Я установил DefaultCellValue
в true
, но каждая новая строка появляется с cell.Value == False
в этом столбце. Как я могу заставить работать значение по умолчанию? Спасибо!
Infragistics WinGrid: как сделать столбец CheckBox изначально отмеченным
Ответы (4)
Если ничего не помогает, я бы посоветовал вам вернуться к установке значения вручную для события InitializeRow
.
Попробуйте выполнить yourColumn.DataType = typeof(bool)
и yourColumn.DefaultCellValue = true
.
Я вижу, что это старый пост, но это может помочь кому-то найти ответ в Google!
На новых строках можно использовать событие InitializeTemplateAddRow, оттуда можно установить значение нужного столбца
//Add TemplateAddRow handler
_ultraGrid.InitializeTemplateAddRow += _ultraGrid_InitializeTemplateAddRow
//In the InitializeTemplateAddRow set the cells value
e.TemplateAddRow.Cells[CELLNAME].Value = true;
//OR
e.TemplateAddRow.Cells[index].Value = true;
Когда это возможно, мне нравится использовать свой собственный класс модели представления, когда я привязываюсь к сетке, и поэтому, когда я сталкиваюсь с этой проблемой, я просто добавляю нужный столбец со значением по умолчанию true.
Если вы не можете использовать свой собственный класс модели представления, вы также можете обработать событие Initialize сетки и установить его там.