Comunidad de diseño web y desarrollo en internet online

agregar item a combobox en flex

Citar            
MensajeEscrito el 17 Dic 2009 06:49 pm
buenos dias, de nuevo por aqui con una pequeña duda
alguien sabe como agregar un item a un combobox en flex??
este es el combobox:

Código Flex :

<mx:ComboBox x="674" y="8" dataProvider="{trabajo.lastResult.centrabs.centrab}" labelField="CenTrab_Clave" width="235" id="Trab_BusCTrab">
               <mx:itemRenderer>
                  <mx:Component>
                     <mx:HBox>
                        <mx:Label text="{data.CenTrab_Clave}"/>
                        <mx:Label text="{data.CenTrab_Lugar}"/>
                     </mx:HBox>
                  </mx:Component>                  
               </mx:itemRenderer>
               </mx:ComboBox>


quiero agregar el item para tener la posibilidad de seleccionar uno que diga TODOS
es para una busqueda

any idea??
gracias!!!!! salu2

Por ferckham07

12 de clabLevel



Genero:Masculino  

Software Developer

chrome
Citar            
MensajeEscrito el 17 Dic 2009 07:35 pm
si trabajo.lastResult.centrabs.centrab es de tipo Array, intenta lo siguiente:

Código :

   // creamos el nuevo item que vamos a agregar
    var obj:Object = new Object();
    obj.data.CenTrab_Clave = "Todos";
    obj.data.CenTrab_Lugar = "Todos";

    // si lo queremos al final de la lista
    trabajo.lastResult.centrabs.centrab.push(obj);

    // si lo queremos al inicio de la lista
    trabajo.lastResult.centrabs.centrab.unshift(obj);


si trabajo.lastResult.centrabs.centrab es de tipo ArrayCollection, entonces intenta esto:

Código :

   // creamos el nuevo item que vamos a agregar
    var obj:Object = new Object();
    obj.data.CenTrab_Clave = "Todos";
    obj.data.CenTrab_Lugar = "Todos";

    // si lo queremos al inicio de la lista
    trabajo.lastResult.centrabs.centrab.addItem(obj);

    // si lo queremos al final de la lista
    trabajo.lastResult.centrabs.centrab.addItemAt(obj, trabajo.lastResult.centrabs.centrab.length);


en caso que no se agregue automaticamente al combo, coloca esta línea después de agregar el item

Código :

    Trab_BusCTrab.dataProvider = trabajo.lastResult.centrabs.centrab;


Espero te ayude en algo.

Por xurban

2 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 17 Dic 2009 08:19 pm
el trabajo.lastResult.centrabs.centrab es un xml
igual gracias por responder
vere que puedo hacer con tu respuesta

saludos!

Por ferckham07

12 de clabLevel



Genero:Masculino  

Software Developer

chrome
Citar            
MensajeEscrito el 20 Dic 2009 11:17 pm
lo mejor en este case es extender el combo y crear el itemrender o directamente crea el itemrender
render
<?xml version="1.0" encoding="utf-8"?>
<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml"
styleName="plain" horizontalScrollPolicy="off">

<mx:Image source="{data.icon}" />
<mx:Label text="{data.label}" fontSize="11" fontWeight="bold" truncateToFit="false"/>

</mx:HBox>
pero yo prefiero hacerlo como sale en la paginas de adobe extenderlo y luego itemrender
en fin en esta cuestion no hay quien tenga 100% la verdad

y lo ocupamos asi
<mx:ComboBox itemRenderer="renderers.QuickLinkItemRenderer" width="100%"/>

Por xcom

Claber

530 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.