Flex 3根据匹配属性列出dataprovider

时间:2012-01-27 11:33:32

标签: flex flex3

我有一些xml,我想将它提供给List dataprovider,但是基于属性匹配。

我的Xml

<components>
<rows name="general">
    <objects name="Start" image16="startflag16" image32="startflag32" class="someclass">
        <property>To</property>
        <property>Subject</property>
        <property>Content</property>
        <property>Attachments</property>
    </objects>
    <objects name="Stop" image16="endflag16" image32="endflag32" class="someclass">
        <property>Id</property>
        <property>Workflow Name</property>
    </objects>
    <objects name="Command" image16="command16" image32="command32" class="someclass">
        <property>Id</property>
        <property>Command</property>
        <property>Working Dir</property>
    </objects>
</rows>
<rows name="int">
</rows>
<rows name="data">
</rows>
</components>

我的代码

<mx:List id="listView" textIndent="5" verticalScrollPolicy="auto"
         dragEnabled="true" labelField="name" iconField="image" height="100%" width="140">
</mx:List>

我正在尝试执行以下操作,如果我从下面的行中移除(@name=="general"),它会为我提供所有属性

listView.dataProvider=list_components.rows(@name=="general").objects.property;

但它给了我错误,所以基本上我希望根据rows attribute name匹配general

获取所有属性

1 个答案:

答案 0 :(得分:1)

使用XMLListCollection并使用e4x过滤您用作源的XMLList,或者在XMLListCollection上使用filterFunction。