Пользовательские данные отображения Flex Tree - DataDescriptor?

Я пытаюсь настроить отображение пользовательских данных в виде дерева, которое выглядит следующим образом.

ID  DATA    PARENT  SORT
a   ...              10
aa  ...     a        10
ab  ...     a        20
b   ...              20
c   ...              30

Это будет выглядеть так в xml

<root>
    <a>
        <aa/>
        <ac/>
    </a>
    <b/>
    <c/>
</root>

Я не хочу переводить это в XML. Я хочу подключиться к Tree, чтобы оно отображало мои данные в виде иерархии. Я создал собственный дескриптор данных (реализует ITreeDataDescriptor2), и он не совсем работает. Он отображает узлы с правильным отступом, но не помещает узлы внутри их родителей.

http://pastie.textmate.org/604675

http://files.seanhess.net/trees.png

Что мне нужно реализовать / сделать, чтобы эти данные отображались? Похоже, проблема в функции getHierarchicalCollectionAdaptor, но я не совсем уверен, что делать. Любые идеи?


person Sean Clark Hess    schedule 03.09.2009    source источник


Ответы (2)


Попробуйте вместо этого расширить DefaultDataDescriptor. По всей вероятности, в вашем коде есть ошибка. Вам нужно переопределить методы getChildren, hasChildren и isBranch.

person cliff.meyers    schedule 05.09.2009

У меня такая же проблема. В моем случае это была ошибка в том, как я реализовал метод getNodeDepth. Первоначально я думал, что глубина верхнего уровня равна 0, и закодировал соответственно. Но верхний уровень равен 1, и внесение этого изменения привело к правильному отображению иерархии.

person user430711    schedule 25.08.2010