1

root.appendChild() を呼び出してツリーパネル ルートにいくつかの子を追加し、root.expand() を呼び出してツリーを展開しましたが、ヘッダーの並べ替えボタンをクリックするまで子ノードは表示されませんでした。プログラムで子ノードを表示するために設定する必要があるプロパティはありますか?

手伝ってくれてありがとう。

コードは次のとおりです。

        tree.getRootNode().removeAll();

        var root = tree.setRootNode({
            PRTNUM:'root',
            id: 'treeRoot',
            leaf: false
        });

        for (var i = 0; i < result.data.length; i++) {
            var rec = result.data[i];
            var node = root.appendChild({
                PRTNUM: rec.PRTNUM,
                DESC: rec.DESC,   
                icon: this.convertTypeToIcon(rec.TYPE),
                id: rec.PRTNUM,
                leaf: true

            });
        }


        root.expand();
4

2 に答える 2

2

ルート ノードにはもともと子がなかったので、リーフとしてマークされました。最初は葉である親ノードに対して次のことが機能し、プログラムでノードを追加する必要があることがわかりました。

parentNode.set("leaf", false);  //must be set to work properly
parentNode.appendChild(newChild);
parentNode.expand();
于 2012-10-31T01:32:41.597 に答える
1

appendChild() を呼び出した後に次の行を追加すると、「並べ替え」列ボタンをクリックするまで「ツリー グリッド」が展開されないことがわかりました。ありがとう。

        root.expandChildren(true);

        root.sort(function() {});
于 2012-10-31T18:20:27.887 に答える