Galera, alguém sabe se eu consigo setar o item selecionado no combobox a partir de um objeto?
Por exemplo:
Tenho o dataProvider do ComboBox com os clientes, e seto um cliente existente no dataprovider como selectedItem do combo, só que, a instância é diferente, porém os dados são iguais. Não teria como eu sobrescrever algum método estilo o equals() do java para pode setar o item?
Precisei fazer isso e não vi uma forma nativa de fazê-lo, para isso eu criei o seguinte método:
/*****QuandovocêtentaselecionarumitemdeumComboBoxatravésdoselectedItem="string qualquer",*oFlexnãotemcomocompararsuastringcomoobjetodacollection,então,eledizquenãoencontra.*Oquetemquesefazeréencontraroobjetodesejadoatravésdeumapropriedadedele;eumvalorquevocê*especificar.**SódeveserusadocomcollectionsquetenhaCOLEÇÕESDEENTIDADEScomoDataProvider's, e as entidades*devemserDYNAMIC***/publicstaticfunctionfindObjectInCombo(colecao:ComboBox,valor:Object):Object{if(colecao==null||(valor==null||valor=="")){returnnull;}varresposta:Object;foreach(varo:Objectincolecao.dataProvider){if(o[colecao.labelField]==valor){resposta=o;break;}}returnresposta;}
O objetivo é encontrar o objeto na BomboBox (você pode adaptá-lo para outro tipo de componente) e compará-lo através de uma propriedade e um valor; ou seja, me encontre o objeto na collection que tenha essa propriedade com esse valor.
Um detalhe é que o tal objeto tem que ser dynamic.
paulo.ps84
j0nny:
Galera, alguém sabe se eu consigo setar o item selecionado no combobox a partir de um objeto?
Por exemplo:
Tenho o dataProvider do ComboBox com os clientes, e seto um cliente existente no dataprovider como selectedItem do combo, só que, a instância é diferente, porém os dados são iguais. Não teria como eu sobrescrever algum método estilo o equals() do java para pode setar o item?