none
Mostrar valor en combo box RRS feed

  • Pregunta

  • Hola,

    A ver si me pueden ayudar y si se entiende lo que necesito:

    Yo tengo un formulario en el cual se cargan datos, hay algunos campos que se cargan a través de Combo Box y en la base se guardan.

    Cuando quiero actualizar algún registro dado de alta, como hago para que en el formulario en el campo combo box se cargue el valor correspondiente guardado en la base?

    Saludos!

    lunes, 2 de julio de 2012 17:17

Respuestas

  • como hago para que en el formulario en el campo combo box se cargue el valor correspondiente guardado en la base?

    imagino el combo lo cargas asignando el DataSource, no ?

    si es asi podrias definir el ValueMember y DisplayMember

    combobox1.ValueMember ="nombrecampo";

    combobox1.DisplayMember="nombrecampo";

    combobox1.DataSource = dt; //dt es el datatable

    entonces podrias hacer

    combobox1.SeelctedValue = valor;

    si el valor que asignas coincide con uno del ValueMemeber seleccionara ese en el combo

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Gonzalo_360 lunes, 2 de julio de 2012 18:19
    lunes, 2 de julio de 2012 17:37

Todas las respuestas

  • como hago para que en el formulario en el campo combo box se cargue el valor correspondiente guardado en la base?

    imagino el combo lo cargas asignando el DataSource, no ?

    si es asi podrias definir el ValueMember y DisplayMember

    combobox1.ValueMember ="nombrecampo";

    combobox1.DisplayMember="nombrecampo";

    combobox1.DataSource = dt; //dt es el datatable

    entonces podrias hacer

    combobox1.SeelctedValue = valor;

    si el valor que asignas coincide con uno del ValueMemeber seleccionara ese en el combo

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Gonzalo_360 lunes, 2 de julio de 2012 18:19
    lunes, 2 de julio de 2012 17:37
  • Leandro,

    Si eso lo había probado pero no me carga nada. Yo los combos los cargo así:

    public void RellenaComboTipoDoc(ref ComboBox combo)
            {
                try
                {
                    clsCntsDBs CntCls = new clsCntsDBs();
    
                    maestro_elmaEntities CAR = new maestro_elmaEntities(CntCls.GetCntBase());
                    object query = (from es in CAR.tb_mae_doc
                                    select es);
                    combo.DataSource = query;
                    combo.DisplayMember = "descripcion";
                    combo.ValueMember = "tipo_doc";
                   
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
    
            }


    lunes, 2 de julio de 2012 17:47
  • Hola,

    Esto es un IList o un IQueryable, revisa que ese es el problema.

    (from es in CAR.tb_mae_doc
                                    select es);

    phurtado
    Mi Blog Blog
    Sigueme en Twitter

    lunes, 2 de julio de 2012 17:50
    Moderador
  • de dodne sale esto

    maestro_elmaEntities CAR = new maestro_elmaEntities(CntCls.GetCntBase());

    suena bastante extraño

    ademas si pones un breakpoint en el codigo, puede ver que se cargan item que mostrar en query ?

    ademas veo medio raro eso de definir object a query, porque no has usado al menos un var

    var query = from es .....

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    lunes, 2 de julio de 2012 18:00
  • Hola!

    Ya lo pude solucionar, era como había probado y como me dijo Leandro! Había algo que estaba molestando, hice un clean al proyecto, volvi a compilar y funciono bien!

    Gracias!

    Saludos!

    lunes, 2 de julio de 2012 18:19
  • Leandro,

    maestro_elmaEntities CAR = new maestro_elmaEntities(CntCls.GetCntBase());

    Eso lo hago porque yo genero las conexiones mediante una clase, tengo un form donde testeo la conexión con los datos que le paso y la clase se encarga de armar la cadena de conexión.

    Saludos!

    lunes, 2 de julio de 2012 19:12