2011-06-27 93 views
0

我有一个MenuBar,它使用XMLListCollection对象作为dataProvider。 我希望在运行时添加和删除此集合中的元素。Flex:向XMLListCollection添加元素?

  • 如何添加/删除XMLListCollection中的元素?

//将改善主要想法的所有建议都不胜感激。 :)

+2

collectionName.addChild(○:对象)和collectionName.removeChild(指数:int);在 –

+0

@The_asMan - 你真的回答了这个问题。似乎我错过了文件中的某种方式。添加你的答案,所以我可以接受它。 :) –

+1

就个人而言,我不会使用XMLListCollection。我不喜欢基于XML的数据容器,因为它们处理起来很慢。如果有的话,使用HierarchicalData。 –

回答

1

要添加

collectionName.addChild(o:object) 

要删除

collectionName.removeChild(index:int); 
3

对我个人来说,使用ArrayCollection作为数据提供者更容易。只要您的对象具有“children”属性,您就可以使用ArrayCollections,这个children数组将成为您的子菜单。如果使用ArrayCollections更容易,这可能是一条好路线。以下是一个很好的例子:http://flexoop.com/2008/11/databinding-with-menubar-dataprovider/

您可以使用e4x轻松修改XML/XML列表。以下是关于如何使用XML/XMLList的链接:http://livedocs.adobe.com/flex/3/html/help.html?content=13_Working_with_XML_03.html

有一个叫做appendChild的函数,您可以通过简单地使用选定节点上的delete关键字来删除节点。

delete someXML.someChild[0]; 

下面是关于使用XML的好文章:http://blogs.4point.com/armaghan.chaudhary/2009/08/xml-manipulation-in-flex-and-actionscript.html

XML功能/技术能很好地工作的XMLList(和的XMLListCollection)。

+0

是的,这也有帮助,谢谢。 :) –