Я бы хотел, чтобы данные, предоставленные в DataGrid, решали, как лучше всего их визуализировать (то есть пусть данные несут с собой объект, который будет выполнять рендеринг).
Например, путем создания интерфейса «Renderable», который имеет свойство «renderer: IFactory», а затем используется следующим образом:
<mx:DataGrid x="0" y="0" width="100%" dataProvider="{myDataProvider}">
<mx:columns>
<mx:DataGridColumn headerText="Task" width="100"
itemRenderer="{(data as Renderable).renderer}"/>
</mx:columns>
</mx:DataGrid>
Но для этого Renderable должен расширять IEventDispatcher
, что кажется немного большим ...
Я также пытался использовать:
itemRenderer="{(data as Renderable).getRenderer()}"
Что ничего не делает (на самом деле метод getRenderer
никогда не вызывается).
Есть ли лучший способ сделать это? Я делаю что-то в корне неправильно?
Спасибо!