XtraTreeList - Как я могу сбросить значение Unbound Boolean Cell на Indeterminate?
У меня есть XtraTreeList с UnboundColumn типа Boolean, то есть:
column.UnboundType = DevExpress.XtraTreeList.Data.UnboundColumnType.Boolean;
Первоначально все CheckEdits отображаются серым цветом в неопределенном состоянии, и их значение равно NULL.
Можно ли как-то сбросить значения определенных флажков в это состояние неопределенности?
Я пытался:
treeListNode[columnID] = null;
но появляется сообщение об ошибке с сообщением: "Нулевой объект не может быть преобразован в тип значения".
Также:
treeListNode[columnID] = DefaultBoolean.Default;
а также:
treeListNode[columnID] = CheckState.Indeterminate;
но оба устанавливают значение ячейки в True.
Любая помощь приветствуется.
2 ответа
Не уверен, поможет ли это вам, но другой подход, который вы можете попробовать, - установить несвязанный тип столбца для объекта, а затем восстановить его.
foreach (var column in treeListNode.Columns)
{
var tc= column as TreeListColumn;
if (tc!= null && tc.Name == columnID)
{
var originalType = tc.UnboundType;
tc.UnboundType = UnboundColumnType.Object;
treeListNode[columnID] = null;
tc.UnboundType = originalType;
break;
}
}
Пытаться:
treeListNode[columnID] = DBNull.Value
но я не уверен, что это работает, в конце концов мы должны установить состояние CheckEdit вручную.