组件使用_as3动态创建AdvancedDataGrid

本文介绍如何使用ActionScript 3.0 (AS3) 控制AdvancedDataGrid组件,包括动态生成数据源、设置数据提供者及刷新显示。通过实例演示了如何创建数据集合、配置列属性,并将其应用于AdvancedDataGrid。

上次的AdvancedDataGrid_mxml使用的,已经说明了AdvancedDataGrid的基本使用,
但是,数据源一般都是动态产生的,所以要使用as3对AdvancedDataGrid进行控制!
code

<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
internal function init():void{
<!--1-->
var dp:ArrayCollection dp = new ArrayCollection([
{name:"one",key:'key1',data:'数据1'},
{name:"one",key:'key2',data:'数据2'},
{name:"one",key:'key3',data:'数据3'}
]);
<!--2-->
gc.source = dp;
<!--3-->
gc.refresh();
}
]]>
</mx:Script>
<mx:Panel title="AdvancedDataGrid Control Example"
height="75%" width="75%" layout="horizontal"
paddingTop="10" paddingBottom="10" paddingLeft="10" paddingRight="10"
>
<mx:AdvancedDataGrid id="myADG" 
width="100%" height="100%" 
> 
<mx:dataProvider>
<mx:GroupingCollection id="gc">
<mx:grouping>
<mx:Grouping>
<mx:GroupingField name="name"/>
</mx:Grouping>
</mx:grouping>
</mx:GroupingCollection>
</mx:dataProvider> 
<mx:columns>
<mx:AdvancedDataGridColumn dataField="key"/>
<mx:AdvancedDataGridColumn dataField="data"/>
</mx:columns>
</mx:AdvancedDataGrid>
</mx:Panel>
</mx:Application>

 

说明:
1: 创建一个数组集合,并组合好数据对象
2: 设置myADG的dataProvider,myADG.dataProvider.source是GroupingCollection对象,myADG.dataProvider.source.source,是GroupingCollection对象的source属性
3: 最关键一步,刷新一下gc
ps或者直接使用as3初始化AdvancedDataGrid,code如下:

var dp2:ArrayCollection = new ArrayCollection([
{name:"one",key:'key1',data:'数据1'},
{name:"one",key:'key2',data:'数据2'},
{name:"one",key:'key3',data:'数据3'}
]);
var adg:AdvancedDataGrid = new AdvancedDataGrid();
adg.percentHeight=100;
adg.percentWidth=100;
var gc:GroupingCollection = new GroupingCollection();
var grouping:Grouping = new Grouping();
grouping.fields=[new GroupingField("name")];
gc.grouping = grouping;
gc.source = dp2;
adg.dataProvider = gc;
adg.columns=[new AdvancedDataGridColumn("key"),new AdvancedDataGridColumn("data")];
gc.refresh();
//最后将adg加入到容量中就可以显示了
stage.addChild(gc);

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值