如何访问 datagrid itemRenderer

   <mx:DataGrid id="dgList"
     x="10"
     y="39"
     dataProvider="{data11}"
     width="557"
     height="185">
  <mx:columns>
   <mx:DataGridColumn headerText="选择"
          dataField="selected"
          itemRenderer="MyControl.SelectBox"/>
   <mx:DataGridColumn headerText="ID"
          dataField="ID"/>
   <mx:DataGridColumn headerText="Text"
          dataField="Text"
          itemRenderer="{new ClassFactory(mx.controls.Label)}"/>
  </mx:columns>
 </mx:DataGrid>

 

SelectBox.as

 

package MyControl
{
 import flash.events.Event;
 import mx.core.Application;
 import mx.controls.CheckBox;
 import mx.controls.DataGrid;

 public class SelectBox extends CheckBox
 {


  public function SelectBox()
  {

   super();
  }

  override public function initialize():void
  {

   super.initialize();
   this.addEventListener(Event.CHANGE, OnChange);
  }

  private function OnChange(evn:Event):void
  {
   super.data.selected=this.selected;
   this.label=this.selected ? "已选" : "未选";
  }

  [Bindable]
  override public function set data(value:Object):void
  {
   if (value == super.data)
    return;
   super.data=value;
   if (value == null)
    return;
   this.Refresh();
  }

  override public function get data():Object
  {
   return super.data;
  }

  public function Refresh():void
  {
   this.selected=(super.data.selected == "true");
   this.label=this.selected ? "已选" : "未选";
  }
 }
}

 

访问当前选中的 itemRenderer   对应的  SelectBox  的属性

 

SelectBox(dgList.indexToItemRenderer(dgList.selectedIndex)).Refresh();

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值