我正在为spark DataGrid编写通用<s:GridItemEditor>
代码,以根据属性类型动态创建适用于版本的UIComponent。
链接到GridColumn的一些属性很复杂,例如:
var gridColumn:GridColumn = new GridColumn("Category.Description");
我遇到了这个复杂属性的错误:
ReferenceError: Error #1069: Property Category.Description not found on GOClases.Person and there is no default value.....
在spark.components.gridClasses :: GridItemEditor / set data()[E:\ dev \ hero_private \ frameworks \ projects \ spark \ src \ spark \ components \ gridClasses \ GridItemEditor.as:176] **
这是此错误发生的具体功能:
public function set data(value:Object):void
{
_data = value;
if (_data && column.dataField)
{
this.value = _data[column.dataField];
}
}
是否可以避免此错误正确重新定义set data()函数? 我该如何解决这个问题?
是否可以在spark DataGrid中将不同属性定义为label和itemEditor?
非常感谢。
答案 0 :(得分:0)
这就是我解决的问题:更有意义的是将对象类型属性赋给GridColumn的dataField var gridColumn:GridColumn = new GridColumn("Category")
;并使用labelFunction来动态评估复杂的属性,我在这里使用了r1.deval.D库来解决它:
private function funcionEtiqueta(item:Object, column:GridColumn):String
{
D.eval(complexProperty,item).toString();
}
也许这会对别人有所帮助。 感谢。