今天在做项目中遇到的问题,需要动态生成DataGird,且所以列信息都从数据库中获取,动态生成列问题很简单,在DataGird中加入chenkbox等一些控件,以前也使用过,使用的是mxml写的itemrender,在as动态写itemrender没用过,所以查了一些帮助,发现一个类ClassFactory,感觉很好用,记录下来(下面是帮助里面描述的)
ClassFactory 类实现 IFactory 接口。因此,通过该类,您可以创建可分配到 IFactory 类型属性的对象,如 List 控件的 itemRenderer
属性或 DataGrid 控件的 itemEditor
属性。
例如,假设您编写了一个名为 ProductRenderer 的项目渲染器类,该类包含一个 showProductImage
属性,此属性可以是 true
或 false
。如果您希望 List 控件使用此渲染器,并使每个渲染器实例都显示产品图像,则应编写以下代码:
var productRenderer:ClassFactory = new ClassFactory(ProductRenderer); productRenderer.properties = { showProductImage: true }; myList.itemRenderer = productRenderer;