这与其他question有关。但没关系。我已经修复了它的一部分。我有一个DataGrid,它的数据提供者是一个ArrayCollection,我希望它将所有itens(Object Type)解析为一个String。因为我为每个循环做了一个“设置”,它设法获取对象及其值,但是如果我有更多的那个对象,它只会得到最后一个对象,不知道为什么。ArrayCollection对象字符串 - “每个”循环的问题
首先,我将展示如何将这些项目添加到ArrayCollection中,这样您就可以轻松地理解其余部分。
在主应用程序,我有一个ArrayCollection:
<mx:ArrayCollection id="collection">
然后在其他组件有一个添加项目菜单,当你添加一个项目:在另一个组件
private function fazerEncomenda():void
{
var novoitem:Object;
novoitem = new Object();
novoitem.id = "consumivel"+getProdInfo.lastResult.consumivel.id;
novoitem.tinteiroid = getProdInfo.lastResult.consumivel.id;
novoitem.label = getProdInfo.lastResult.consumivel.nome;
novoitem.ref = getProdInfo.lastResult.consumivel.refmarca;
novoitem.marca = getProdInfo.lastResult.consumivel.marca;
novoitem.genero = genero.text;
novoitem.quantidade = quantidade.text;
Application.application.collection.addItem(novoitem);
}
然后DataGrid作为其数据提供者绑定到ArrayCollection
<mx:DataGrid id="compras" x="0" y="0" width="556" dataProvider="{Application.application.collection}" editable="false">
<mx:columns>
<mx:DataGridColumn headerText="ID" dataField="tinteiroid" visible="false"/>
<mx:DataGridColumn headerText="Nome" dataField="label" width="120" />
<mx:DataGridColumn headerText="Ref" dataField="ref" width="100"/>
<mx:DataGridColumn headerText="Marca" dataField="marca" width="100"/>
<mx:DataGridColumn headerText="Género" dataField="genero" width="155"/>
<mx:DataGridColumn headerText="Quantidade" dataField="quantidade" width="81"/>
</mx:columns>
</mx:DataGrid>
而当一个Butt on被按下的函数将所有对象及其值赋给一个String。
而在这个函数中,它只在ArrayCollection中获取最后一项。
for each (novoitem in compras.dataProvider)
{
finish += "TinteiroID:"+novoitem.tinteiroid+"#TinteiroLABEL:"+novoitem.label+"#TinteiroREF:"+novoitem.ref+"#TinteiroMARCA:"+novoitem.marca+"#TinteiroGENERO:"+novoitem.genero+"#TinteiroQUANTIDADE:"+novoitem.quantidade+"#FIMPROD#";
trace(finish);
}
当然在函数中使用的变量和加:
private var finish:String;
private var novoitem:Object
当您在完成VAR我用+=
看到那么它增加了它的自我和下一个对象。相反,他增加了null。如果之前有3个项目,则只有一个空事件。
不知道这个循环有什么问题。
请帮忙。我在这里放松心情。
PS:对不起,任何不好的英语,它已经在这3小时。并没有进展。
编辑:缺少瓦尔宣言新增
这看起来和我所做的一样,我没有发布所有的代码,不要阻止你们帮助我。这增加了将.mxml文件中的集合绑定到另一个mxml文件和组件之间的过程。毫无疑问,你的工作也会如此。 – 2009-10-04 21:38:19
PS:这就是为什么我只包括我的代码只是给你们,有一个更好的理解。它的工作方式。我有很多帮助。再次感谢你们所有人。 – 2009-10-04 21:39:47
很高兴为您解决这一切:-) – 2009-10-04 22:20:05