Mi problema es el siguiente. Tengo una datagrid, y dos columnas de ese datagrid contienen combobox como itemRenderers, de la siguiente forma:
Código ActionScript :
<mx:DataGridColumn id="tableEquipsColumnGenerateType" dataField="generateType" headerText="{this.resourceManager.getString('localization', 'web.modules.schedules.viewSchedule.tableEquipGenType')}" textAlign="center" width="170" minWidth="130"> <mx:itemRenderer> <mx:Component> <mx:HBox width="100%" horizontalAlign="center"> <mx:ComboBox id="combo1" dataProvider="{data.generateTypeProvider}" change="outerDocument.changeGenerateTypeComboHandler(event)" selectedIndex="{data.generateTypeSelected}" enabled="{data.enableRenderers}"/> </mx:HBox> </mx:Component> </mx:itemRenderer> </mx:DataGridColumn> <mx:DataGridColumn id="tableEquipsColumnResponsible" dataField="responsible" headerText="{this.resourceManager.getString('localization', 'web.modules.schedules.viewSchedule.tableEquipResponsible')}" textAlign="center" width="260" minWidth="240"> <mx:itemRenderer> <mx:Component> <mx:HBox width="100%" horizontalAlign="center"> <mx:ComboBox id="combo2" width="240" dataProvider="{data.responsible}" labelField="name" enabled="{data.enableRenderers}" change="outerDocument.changeResponsibleComboHandler(event)" selectedIndex="{data.responsibleSelected}"/> </mx:HBox> </mx:Component> </mx:itemRenderer> </mx:DataGridColumn>
Mi problema concreto es que el dataprovider del combo2 depende del combo1. Cuando asigno este dataprovider, no logro que el combo2 se refresque, pues no cambia las opciones hasta que yo seleccione algún item del propio combo2, en ese momento sí se refresca el propio combo2. Una alternativa que me funcionó fue utilizar el evento focusIn del combo2 así:
focusIn=data.responsible.refresh(). Pero el problema es que al dar el primer click refresca y sólo en el segundo me muestra las opciones.
Si alguien sabe como ayudarme me haría un gran favor.
Gracias de antemano por toda la atención prestada.