2016-03-30 2 views
0

フレックス4でmx:treeを作成していて、ツリーにXMLListファイルが設定されていて、ファイルがデータベースから更新されています。私が達成しようとしているのは、コースの修了状況に応じて別のアイコンが表示されるようにツリーをリフレッシュすることです。Flex 4 Mx:ツリーがtree.refresh()またはtree.reset()で更新されない

問題は、ツリーは更新されていませんが、XMLListファイルがあるため、私は本当に助けていただければ幸いです。

ところで、私はFlexについて知らない。

は、ここでは、コードです:

public static var treeData:XMLList = new XMLList(MyString); 

<mx:Tree id="myTree" width="40%" height="100%" labelField="@label" fontSize="14" focusColor="#ff5003" 
        render="renderTree()" 
        iconFunction="tree_iconFunc" 
        showRoot="false" 
        dataProvider="{treeData}" 
         change="treeChanged(event)" 
         depthColors="{myDepthColors}" 
         color="#006596" borderColor="#03B4EC" 
         click="SoundExample(String([email protected])), habilitar()" 
         alternatingItemColors="{myAlternatingRowColors}" 

         /> 



    public function renderTree():void { 
        trace("Entró a renderTree"); 
        initAppB(); 
        if (refreshData){ 

         myTree.invalidateList(); 
         refreshData = false; 
         myTree.openItems = Globals.treeData; 

         myTree.validateNow(); 
        } 
       } 

答えて

0

代わりXMLListあなたはArrayCollectionようバインド可能コレクションを使用することができます。 これで、手動でツリーを無効にする必要はありません。 ArrayCollectionが変更されると自動的に更新されます。

また、「ツリーにXMLListファイルが格納されていて、ファイルがデータベースから更新されています」という意味はわかりません。明確にできますか?

ツリーを更新するには、treeData:XMLListを更新する必要があります。別の値に置き換える場合は、次のように試してください:

関連する問題