首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

flex 自带数据库导出数据result如何转成ArrayCollection 加载到DataGrid小弟我这样写不对

2012-03-02 
flex 自带数据库导出数据result怎么转成ArrayCollection 加载到DataGrid我这样写不对啊如题:新手 很多地方

flex 自带数据库导出数据result怎么转成ArrayCollection 加载到DataGrid我这样写不对啊
如题:
新手 很多地方不懂 找不到资料参考 麻烦各位了。给修正下代码谢谢谢谢!
还有个问题数据库抽出来的数据不能直接呈现给客户要修改一下,这个动作是在result赋值给ArrayCollection的时候 还是在DataGrid里加工?

以下函数
var ac:ArrayCollection=new ArrayCollection;
var result:SQLResult = stmt.getResult();//上面代码就不列出来了
var i:int = result.data.length;
for(var j:int=0; j<i; j++){
var obj:Object=result.data[j] as Object;  
ac.addItem(obj); 
}  
 return ac;

以下为MXML 没全列出 photoArrdata为调用函数后取得的ArrayCollection对像

<mx:DataGrid x="10" y="10" width="271" dataProvider="{photoArrdata}">
<mx:columns>
<mx:DataGridColumn headerText="id" dataField="id"/>
<mx:DataGridColumn headerText="outname" dataField="outname"/>
</mx:columns>
</mx:DataGrid>

[解决办法]
没有试过flex自带的数据库,一般的做法是,后台返回一个List<Object>的集合,然后flex端直接使用就行了。
[Bindable]
var ac:ArrayCollection=event.result as ArrayCollection;
<mx:DataGrid x="10" y="10" width="271" dataProvider="{ac}">
<mx:columns>
<mx:DataGridColumn headerText="id" dataField="id"/>
<mx:DataGridColumn headerText="outname" dataField="outname"/>
</mx:columns>
</mx:DataGrid>
其中id,outname为object中的属性
[解决办法]
在result 函数中处理最后绑定到DataGrid上
绑定的数据源要加上[Bindable]

[Bindable]
var ac:ArrayCollection=new ArrayCollection;
自己调试下as是否正确的添加了数据

热点排行