Flex: Come i dati passati dal DataGridColumn.itemToLabel a DataGrid.itemRenderer.set (dati)?
-
12-09-2019 - |
Domanda
Ho un DataGrid la cui dataProvider è un array di int Array (ciascuna con diverse lunghezze). Dal momento che ogni riga ha dimensioni variabili (e voglio visualizzare tutti i dati), ho deciso di estendono DataGridColumn e sovrascrive la funzione itemToLabel per poter visualizzare i dati . Il problema è che ho anche bisogno di visualizzare i dati in modo diverso a seconda del valore int.
Credo l'unica soluzione è scrivere un itemRenderer, ma l'unico ingresso la funzione itemRenderer.set (dati) riceve è l'intero int Array. Credo di aver bisogno sia la stringa esatta restituita da itemToLabel o l'indice di colonna della cella del itemRenderer è per (fondamentalmente fare la stessa analisi ho implementato in itemToLabel).
Sto usando Flex 3.4. Grazie per il vostro aiuto.
Soluzione
http: // flexgeek.wordpress.com/2007/05/30/tutorial-using-same-itemrenderer-for-multiple-columns/
Dall'articolo
" ... dobbiamo implementare l'IDropInListItemRenderer interfaccia, che ha due metodi.
public function get listData():BaseListData
{
return _listData;
}
public function set listData(value:BaseListData):void
{
_listData = DataGridListData(value);
invalidateProperties();
}
L'oggetto _listData detiene la proprietà columnIndex, che ti dice quale colonna fa l'itemRenderer appartiene ".