SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: Dieguinho. en Martes 13 de Noviembre de 2007, 16:14

Título: Combobox
Publicado por: Dieguinho. en Martes 13 de Noviembre de 2007, 16:14
Hola, estoy con un problema con el combo box.

Yo cargo un combo manualmente de esta manera;

            comboBox1.Items.Add("BocaJrs");
            comboBox1.ValueMember = "Cod 1";  

En el item guardo lo que quiero que se vea y en el value member un codigo interno
adjunto a ese item.

El problema es que me acabo de dar cuenta que cuando quiero recuperar esos datos de la siguiente manera

            textBox1.Text = comboBox1.SelectedItem.ToString();
            textBox2.Text = comboBox1.ValueMember.ToString();

el value member siempre es el ultimo que cargue.
Por lo que no se si lo estoy trayendo mal o la propiedad value member no es para lo que yo quiero.

Probe tambien con selectedvalue y algunas cosas mas pero no consigo hacer para que cada item lleve a demas un codigo adjunto y despues pueda traerlo a un textbox.
Cualquier ayuda sera agradecida!

saludos.
Título: Re: Combobox
Publicado por: JuanK en Martes 13 de Noviembre de 2007, 20:36
Ese campo no es para eso. Y hasta donde conozco lo ue quieres hacer tal como lo mencionas no existe en el framework.

Mi recomendación ayúdate con una colección de tipo IDictionary.
Título: Re: Combobox
Publicado por: lencho en Miércoles 14 de Noviembre de 2007, 00:11
carga tu combo de esta manera.
Código: Text
  1.  DataSet ds = (new ALM_T_ALMACEN()).getDataFromSP("ALM_SP_ARTICULO_TP_COMBOBOX");
  2. cbxUnidad.DataSource = ds.Tables[0];
  3. cbxUnidad.DataTextField = "DESCRIPCION";
  4. cbxUnidad.DataValueField = "IDUNIDAD";
  5. cbxUnidad.DataBind();
  6.  

y para obtener el el id seleccionado.

Código: Text
  1. cbxUnidad.SelectedValue
  2.  


BYTE.
Título: Re: Combobox
Publicado por: JuanK en Miércoles 14 de Noviembre de 2007, 00:41
Cita de: "lencho"
carga tu combo de esta manera.
Código: Text
  1.  DataSet ds = (new ALM_T_ALMACEN()).getDataFromSP("ALM_SP_ARTICULO_TP_COMBOBOX");
  2. cbxUnidad.DataSource = ds.Tables[0];
  3. cbxUnidad.DataTextField = "DESCRIPCION";
  4. cbxUnidad.DataValueField = "IDUNIDAD";
  5. cbxUnidad.DataBind();
  6.  

y para obtener el el id seleccionado.

Código: Text
  1. cbxUnidad.SelectedValue
  2.  


BYTE.
PERO LO QUE PASA ES QUE SEGUN VI El no utiliza acceso a datos sino que lo llena de manera 'manual' y en dicho caso esas preopiedades resultan inutiles
Título: Re: Combobox
Publicado por: lencho en Miércoles 14 de Noviembre de 2007, 00:47
a pues, tenes razon, no me habia fijau.

Saludos.

BYTE.
Título: Re: Combobox
Publicado por: Dieguinho. en Miércoles 14 de Noviembre de 2007, 13:12
claro, es como dice JuanK, yo no traigo los datos de alguna base de datos, los saco de un archivo .ini

lo que pasa que me resultaba extraño que haciendolo de la manera que decis se pueda hacer lo que yo quiero pero cargando el combo manualmente no se pueda.

gracias igual!

si averiguo algo les aviso.

saludos.

pd: juank, voy a averiguar por la colección de tipo IDictionary que la verdad no la conocia espero que funcione, gracias.