Flex 4 DataGrid 的 checkbox


<mx:DataGrid id="dataGrid" dataProvider="{listInfo.list}" width="100%" height="100%" itemEditEnd="dataGrid_itemEditEndHandler(event)" editable="true">
<mx:columns>
<mx:DataGridColumn headerText="ID" dataField="id" width="60" />
<mx:DataGridColumn headerText="是否结账" dataField="payStatus" width="100" editable="false" >
<mx:itemRenderer >
<fx:Component>
<mx:CheckBox label="{TuanConfigureContext.dataGridCashPayStatus(data)}" selected="{data.editPayStatus == TuanConfigureContext.CASH_PAY_STATUS_PAY }" paddingLeft="5" change="checkbox1_changeHandler(event)">
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.controls.DataGrid;
import mx.controls.listClasses.ListData;
import mx.core.Application;

import net.synke.admin.TuanConfigureContext;

protected function checkbox1_changeHandler(event:Event):void
{
data.editPayStatus = this.selected ? TuanConfigureContext.CASH_PAY_STATUS_PAY : TuanConfigureContext.CASH_PAY_STATUS_UNPAY;
this.setStyle("color" , (data.editPayStatus != data.payStatus) ? "#ff0000" : "#000000");

((listData.owner as DataGrid).dataProvider as ArrayCollection).refresh();
}

]]>
</fx:Script>
</mx:CheckBox>
</fx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
<mx:DataGridColumn headerText="用户名" dataField="username" width="120" />
<mx:DataGridColumn headerText="管理员" dataField="adminUsername" width="120" />
<mx:DataGridColumn headerText="金额" dataField="money" width="120" />
<mx:DataGridColumn headerText="支付时间" dataField="createTime" width="180" labelFunction="{DataGridUtil.dateLabelFormatDateTime}" />

<mx:DataGridColumn headerText="结账时间" dataField="payStatus" width="100" labelFunction="{DataGridUtil.dateLabelFormatDateTime}" />
</mx:columns>
</mx:DataGrid>

目前没有发现更好的方法让columnRenderer与容器进行通信(例如事件),只能通过直接对数据的操作进行互相通信,也许这就是flex datagrid进行数据传递的方法吧。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值