Problemas con mi combobox en VB 2010

Iniciado por NecBalaam, 24 Septiembre 2011, 20:57 PM

0 Miembros y 1 Visitante están viendo este tema.

NecBalaam

Saludos, mi problema es con mi combobox... lo cargo con este codigo en el FORM_LOAD:


CitarSub combollenado()
       conexion.iniciar()
       conexion.Mysqlcon.Open()
       'cmb_id.Items.Clear()
       'cmb_id.DataSource = Nothing
       cmd = New MySqlCommand("select id from usuarios", conexion.Mysqlcon)
       da = New MySqlDataAdapter(cmd)
       da.Fill(ds)
       cmb_id.DataSource = ds.Tables(0)
       cmb_id.DisplayMember = ds.Tables(0).Columns(0).Caption.ToString
       conexion.Mysqlcon.Close()
   End Sub

Me lo llena bien

Citar

Y cuando le doy clic en el boton guardar
Me sale de la siguiente manera:

Citar

Alguien podria ayudarme porfavor.... :(
No esperes tener el 100% de todo, por que no tendrás nada, mejor trabaja en equipo y obtendrás el 50% de algo.

Rudy21

solo antes de llamar a combollenado

haz un combo clear y listo


Rudy21



NecBalaam

#3
Cita de: Rudy21 en 24 Septiembre 2011, 21:10 PM
cmb_id.Items.Clear()

Gracias rudy pero mi problema creo que va mas alla que solo un .clear() :(...
ve lo que me sale man :/

Citar

y lo intento hacer con el
cmb_id.DataSource = Nothing
antes de llamarlo igual no me hace nada :/
No esperes tener el 100% de todo, por que no tendrás nada, mejor trabaja en equipo y obtendrás el 50% de algo.

seba123neo

lo que pasa es que vos estas relacionando el combo con un origen de datos, en este caso es un datatable con registros, para usar el clear() debes cargar los items recorriendo el datatable e insertando los registros con Combo.Items.Add, pero para cuando tenes relacionado un datatable creeria que con hacer Combo1.Datasource = Nothing se te limpia el combo.

saludos.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

NecBalaam

Cita de: seba123neo en 24 Septiembre 2011, 21:47 PM
lo que pasa es que vos estas relacionando el combo con un origen de datos, en este caso es un datatable con registros, para usar el clear() debes cargar los items recorriendo el datatable e insertando los registros con Combo.Items.Add, pero para cuando tenes relacionado un datatable creeria que con hacer Combo1.Datasource = Nothing se te limpia el combo.

saludos.

lo intento hacer con el
cmb_id.DataSource = Nothing
antes de llamarlo igual no me hace nada :/

me pasa lo mismo...
:(
No esperes tener el 100% de todo, por que no tendrás nada, mejor trabaja en equipo y obtendrás el 50% de algo.

.mokk.

Bueno tambien veo que ahi pones

da.Fill(ds)

intenta poniendo antes de eso
ds = new DataSet()
da.Fill(ds)

Bueno talvez te funcione algo asi me sucedia a mi antes, pero lo arreglue algo asi, no recuerdo bien jeje

NecBalaam

Cita de: .mokk. en 24 Septiembre 2011, 21:58 PM
Bueno tambien veo que ahi pones

da.Fill(ds)

intenta poniendo antes de eso
ds = new DataSet()
da.Fill(ds)

Bueno talvez te funcione algo asi me sucedia a mi antes, pero lo arreglue algo asi, no recuerdo bien jeje

:O bendito seas .mokk! gracias :) me funciono :)
No esperes tener el 100% de todo, por que no tendrás nada, mejor trabaja en equipo y obtendrás el 50% de algo.

NecBalaam

Creen que podrian ayudarme mas... "para no tener que crear temas nuevos..."

Tengo el boton de Editar...

"connection must be valid and open" me sale ese error...
con el siguiente codigo en el boton Editar :S:

Citartxt_apellido.Enabled = True
        txt_nombre.Enabled = True
        txt_telefono.Enabled = True

        'Dim cmd As MySqlCommand
        Dim lectura As MySqlDataReader
        Dim cmd As MySqlCommand = New MySqlCommand("Select *  from usuarios where id=" & cmb_id.Text.ToString)
        Try
            cmd.Connection = conexion.Mysqlcon

            lectura = cmd.ExecuteReader
            lectura.Read()

            conexion.iniciar()
            conexion.Mysqlcon.Open()
            cmd = New MySqlCommand("UPDATE usuarios SET nombre= '" + txt_nombre.Text + "',apellido='" + txt_apellido.Text + "', telefono='" + txt_telefono.Text + "' WHERE id=" & cmd.ToString)
            MsgBox(cmd)
            cmd.ExecuteNonQuery()
            MsgBox("Se ha Actualizado satisfactoriamente", MsgBoxStyle.Information)
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

Saben porque me sale ese error? :S
No esperes tener el 100% de todo, por que no tendrás nada, mejor trabaja en equipo y obtendrás el 50% de algo.