XtraTreeList - Как я могу сбросить значение Unbound Boolean Cell на Indeterminate? - PullRequest
2 голосов
/ 30 августа 2011

У меня есть 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 ]

1 голос
/ 14 марта 2012

Не уверен, поможет ли вам это по-прежнему, но другой подход, который вы можете попробовать, - установить несвязанный тип столбца для объекта, а затем восстановить его.

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;
    }
}
0 голосов
/ 30 августа 2011

попробовать:

treeListNode[columnID] = DBNull.Value

но я не уверен, что это работает, в конечном итоге мы должны установить состояние CheckEdit вручную.

...