Galera, eu tenho um dataGrid que contem um ArrayCollection que em uma das
propriedades tem um objeto com suas propriedades. Exemplo:
Já "debuguei" e meu ArrayCollection está montado corretamente e
consequentemente o dataProvider.
arrayCollection = pessoas
pessoa.nome
pessoa.telefone
pessoa.tipoDePessoa. onde tem a propriedade TIPO que pode ser JURIDICO ou
FISICO
a idéia é mostrar ao usuario . EXEMPLO:
Mario, 1234-4321, F, fisico
Joao, 2121-4343, J, juridico
Coloquei no DataGrid
<mx:columns>
<mx:DataGridColumn headerText="id" dataField="id" />
<mx:DataGridColumn headerText="Nome"
dataField="nome/>
<mx:DataGridColumn headerText="Telefone"
dataField="telefone" />
<mx:DataGridColumn headerText="Tipo"
dataField="tipoDePessoa.tipo"/>
<mx:DataGridColumn headerText="Tipo de Pessoa"
dataField="tipoDePessoa.descricao"/>
</mx:columns>
A coluna Tipo de Pessoa ficou em branco, PORQUE NÃO APARECEU ?
BOM, pesquisei e achei o link
<http://www.igorcosta.com/flex3/doc/mx/controls/dataGridClasses/DataGridColumn.html#dataField>,
da documentação no site do IgorCosta !
dataFieldpropriedade public var
dataField:String<http://www.igorcosta.com/flex3/doc/String.html>
O nome do campo ou propriedade no item do data provider associado à coluna.
Me confundiu a parte "propriedade no item do data provider", se no meu
dataProvider tem pessoa.tipoDePessoa, e este está populado,
PORQUE NÃO APARECE NO DATAGRID ????????
Continuei pesquisando e vi que faz uso do labelFunction para composição e
manipulação do dataField.
achei link1 <http://forum.flexbrasil.com.br/viewtopic.php?f=3&t=307>,
link2<http://www.flexbuilder.direciona.com/?p=33>
ou também poderia usar direto no VO
link3<http://blog.dclick.com.br/2008/01/24/evitando-o-uso-de-labelfunctions/pt/>.
Quando usar uma solução ou outra.?????? Se não tiver jeito a opção de
colocar dataField="tipoDePessoa.tipo" e dataField="tipoDePessoa.descricao"
Vou ficar com a LabelFunction mesmo.
mas gostaria de "debater" com vocês
abraços
bruno bg
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---