Apache flex 如何将项目附加到数据提供程序?(弹性)
我想做的是简单地添加到数据提供程序,但是当我添加到数据提供程序时,我会得到一个错误 这是我试图运行的代码Apache flex 如何将项目附加到数据提供程序?(弹性),apache-flex,actionscript-3,actionscript,dataprovider,Apache Flex,Actionscript 3,Actionscript,Dataprovider,我想做的是简单地添加到数据提供程序,但是当我添加到数据提供程序时,我会得到一个错误 这是我试图运行的代码 dg.dataProvider.addItem(obj.ResultSet.Result[i]); 它在for循环中,使用i作为整数 它的工作非常好做 dg.dataProvider = obj.ResultSet.Result 但这对我不起作用,因为我需要多次向数据提供程序添加数据。我得到10个批次的结果,我需要在收到每个批次时将其添加到数据提供程序中 我也试着去做 var dgDP:
dg.dataProvider.addItem(obj.ResultSet.Result[i]);
它在for循环中,使用i作为整数
它的工作非常好做
dg.dataProvider = obj.ResultSet.Result
但这对我不起作用,因为我需要多次向数据提供程序添加数据。我得到10个批次的结果,我需要在收到每个批次时将其添加到数据提供程序中
我也试着去做
var dgDP:dataProvider = new dataProvider();
但由于某种原因Flex不认识它
关于如何实现这一点,您有什么想法吗?数据提供程序是驻留在许多基于列表的类上的属性。它不是一种数据类型。您的数据提供程序的数据类型是什么?它可以是XML、数组、XMLListCollection、ArrayCollection、XMLList或泛型对象。[我假设支持其他数据类型) 向数据提供程序添加内容的“方式”完全取决于您使用的数据提供程序的类型 在Flex4中,数据提供者对象必须实现IList接口,但在Flex3中,数据提供者是通用对象
在您的情况下,由于您已经拥有了这些对象,我只需在它们上面循环并将它们添加到数组或ArrayCollection中,然后使用hat数组作为数据提供程序。您必须初始化
数据提供程序
<mx:DataGrid creationComplete="onDGCreate(event)"/>
现在这将起作用:
dg.dataProvider.addItem(obj.ResultSet.Result[i]);
当您将ArrayCollection和XMLListCollection以外的内容分配给dataProvider
属性时,它将是。此接口的唯一实现者是ListCollectionView
类(ArrayCollection和XMLListCollection的基类),该类具有方法。但在Flex 3中,数据提供程序是通用对象
dg.dataProvider.addItem(obj.ResultSet.Result[i]);