sei que esse tema de itemRenderer e itemEditor é bem batido aqui, mas não achei uma solução para esse problema específico.! vamos lá. tenho um objeto que tem uma propriedade arrayCollection onde uma das propriedades tb é um objeto. EXEMPLO objeto participante propriedade nome - string propriedade end - string propriedade grupo - array<objetoGrupo> ou seja, um participante pode estar em mais de um grupo.
criei um datagrid nessa tela do participante para mostrar ao usuario quais os grupos que esse participante está contido. Existe a possibilidade de um grupo ser excluido nesse participante e/ou um outro grupo ser incluído para esse participante.(esse controle está funcionando OK) então já montei e desmontei meu código diversas vezes. No momento acontece o seguinte: aparece os comboBox [object GrupoAs] MAS QUANDO CLICO em cima do combo aparece respectivamente o grupo selecionado, se escolho outro grupo retorna [object GrupoAs] porém meu objeto participante (que é o principal) é afetado corretamente e é gravado no Banco corretamente.(funcionando OK). já fiz até o labelFunction , mas não adiantou. !!! meu código: <mx:DataGrid x="2" y="0" height="125" width="250" dataProvider="{participanteAs.participanteGrupo}" id="dtgrdGrupo" editable="true" > <mx:columns> <mx:DataGridColumn headerText="Grupo" dataField="grupo" editorDataField="selectedItem" > <mx:itemEditor> <mx:Component> <mx:ComboBox dataProvider="{outerDocument.listaDeGrupos}" labelFunction="onLabelFunction" labelField="descricao" change="onSelectionChange(event)"> <mx:Script> <![CDATA[ import mx.events.ListEvent; import mx.controls.dataGridClasses.DataGridListData; import mx.collections.ArrayCollection; private function onLabelFunction(item:Object):String { var retorno:String = item.descricao; return retorno; } private function onSelectionChange(e:ListEvent):void { //grupo if(selectedItem){ var col:DataGridListData = DataGridListData(listData); var linha:int = col.rowIndex; } } override public function set data(value:Object):void { //grupo if(value){ var col:DataGridListData = DataGridListData(listData); var item:String = value.grupo.id_grupo; for ( var cont:int = 0; cont < outerDocument.listaDeGrupos.length; cont++ ) { if (outerDocument.listaDeGrupos[cont].id_grupo == item) { selectedItem = outerDocument.listaDeGrupos[cont]; selectedIndex = cont; break; } } } } ]]> </mx:Script> </mx:ComboBox> </mx:Component> </mx:itemEditor> </mx:DataGridColumn> </mx:columns> </mx:DataGrid> agradeço a atenção de todos. bruno bg --~--~---------~--~----~------------~-------~--~----~ Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com Mais opções estão disponíveis em http://groups.google.com/group/flexdev -~----------~----~----~----~------~----~------~--~---