如何在运行时通过复制 sparkColumn.itemRenderer 来设置 mxColumn.itemRenderer?
我有一个使用 mx:DataGrid、mx:AdvancedDataGrid 和 s:DataGrid 的应用程序。
我们正在使用 mx:PrintDataGrid 和 mx:PrintAdvancedDataGrid 实现“打印”功能。
我们将可打印的 dataGrid 的列设置为我们要打印的 dataGrid 的列,如下所示:
printDataGrid.columns = targetDataGrid.columns; //或
printAdvancedDataGrid.columns = targetDataGrid.columns;
这样做,打印保留 itemRenderers 的格式。
当dataGrid-to-print为spark时,迭代列,并制作新的spark列
for (var i:uint; i < sparkColumns.length; i++)
{
sparkColumn = sparkColumns.getItemAt(i) as GridColumn;<br/>
mxColumn = new DataGridColumn();<br/>
mxColumn.headerText = sparkColumn.headerText;<br/>
mxColumn.dataField = sparkColumn.dataField;<br/>
//mxColumn.itemRenderer = sparkColumn.itemRenderer;<br/>
mxColumns.push(mxColumn);
}
dataField 和 headerText 属性很容易从 mx 转换为 spark 列,但 itemRenderers 更棘手。
如何将 mxColumn.itemRenderer 设置为 sparkColumn.itemRenderer?
有谁知道如何在 spark itemRenderer 中挖出组件/功能/属性?如何将其“类型转换”到 mx itemRenderer?