1、编写as类
package components
{
import mx.controls.Label;
import mx.controls.listClasses.BaseListData;
import mx.controls.listClasses.ListBase;
public class ItemRendererNumber extends Label
{
public function ItemRendererNumber ()
{
super();
}
// //另一种方法获取dataProvider并调用getItemIndex方法
// override public function set data(value:Object):void{
// super.data = value;
// text = (((listData.owner as ListBase).dataProvider as IList)
// .getItemIndex(data) + 1).toString();
// }
override public function set listData(value:BaseListData):void
{
super.listData = value;
text = ((value.owner as ListBase).itemRendererToIndex(this)+1).toString();
}
}
}
2、在mxml里的调用
<mx:DataGrid id="grid"> <mx:columns> <mx:DataGridColumn headerText="no" itemRenderer="{new ClassFactory(components.ItemRendererNumber)}"/> <mx:DataGridColumn headerText="name" datafield="name"/> </mx:columns>