动态设置组件的itemRenderer属性

对于有itemRenderer属性的组件,如List、DataGrid的DataGridColumn,如果是在设计时设置itemRenderer是比较方便的,只要指定itemRenderer所使用的包和具体组件的名称就可以了,如下:

<mx:DataGridColumn headerText="修改" dataField="edit"
itemRenderer="bss.flex.components.ButtonEditRenderer" width="50"/>

其中bss.flex.components.ButtonEditRenderer是一个带有图片的LinkButton,这样就能显示自定义的渲染效果了:

但是如果要是动态去生成这个表格列的时候又如何设置呢?是不能直接指定itemRenderer=ButtonEditRenderer,也不能给它指定字符串:
itemRenderer="bss.flex.components.ButtonEditRenderer";

这里要用到ClassFactory类,根据Class来设置,使用IFactory接口的newInstance()方法来,设置的方法如下:

var col:DataGridColumn = new DataGridColumn();
var renderer:IFactory = new ClassFactory(自定义的类名,如上面的ButtonEditRenderer);
col.itemRenderer = renderer;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值