Flex: Como os dados são passados de DataGridColumn.itemtolabel para datagrid.itemrenderer.set (dados)?
-
12-09-2019 - |
Pergunta
Eu tenho um datagrid cujo DataProvider é uma matriz de matrizes int (cada uma com comprimentos diferentes). Como cada linha tem tamanho variável (e eu quero exibir todos os dados), decidi estender datagridcolumn e substitua a função ItemTolabel para poder exibir os dados. O problema é que também preciso exibir os dados de maneira diferente, dependendo do valor int.
Acredito que a única solução é escrever um itemRender, mas a única entrada que a função ItemRenderer.Set (Data) recebe é a matriz INT inteira. Acredito que preciso da string exata retornada por ItemTolabel ou o índice de coluna da célula para o qual o ItemRender é (para fazer basicamente a mesma análise que implementei no itemTolabel).
Estou usando o Flex 3.4. Obrigado pela ajuda.
Solução
http://flexgeek.wordpress.com/2007/05/30/tutorial-using-same-itemrenderer-for-multiple-columns/
Do artigo
"... temos que implementar a interface IdropinListItemRenderer, que possui dois métodos.
public function get listData():BaseListData
{
return _listData;
}
public function set listData(value:BaseListData):void
{
_listData = DataGridListData(value);
invalidateProperties();
}
O objeto _listdata segura o colunindex da propriedade, que informa a qual coluna o itemRender pertence. "