0

データプロバイダーをxmlListとして持つチェックボックス付きのツリーがあります。ここで、アイテムをクリックせずに外部から検索して、リストアイテムのアイテムレンダラーを取得する必要があります。

protected function btnSearch_clickHandler():void
        {   
             var searchString:String = txtInputSearch.text;
                if(searchString != "")
                {
                    StyleItemsArray.removeAll();
                    var conaintList:XMLList = (treeSource.node.(@label.search(searchString) > -1) as XMLList);

                    for each(var xmlItem:XML in conaintList)
                    {   
                        // trigger the checkbox click event here
                    }
                }
        }

遅れて申し訳ありません:与えられた解決策を試しましたが、データグループはFlex 4で使用されているようですが、まだFlex 3バージョンです。私はいくつかの他の方法を試しました (例えば itemToItemRenderer()) が、うまくいきませんでした。誰か助けてくれませんか?

4

1 に答える 1

0

for を使用するだけで、リストのすべての item-render を取得できますgetElementAt

for(var i:int=0; i < youListVariable.dataProvider.length; i++)
{
    var render:CustomFieldRenderer = youListVariable.dataGroup.getElementAt(i) as CustomFieldRenderer
    //put Your comparison condition and if condition matched then break
}

CustomFieldRendererは itemRender です。
youListVariableはリストの ID、つまりリストの変数です。

于 2012-12-28T11:44:33.810 に答える