Test Foro de elhacker.net SMF 2.1

Programación => Programación General => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: 01munrra en 12 Abril 2016, 05:34 AM

Título: vb.net combobox con access[SOLUCIONADO]
Publicado por: 01munrra en 12 Abril 2016, 05:34 AM
saludos!

que estoy haciendo mal:
Código (vbnet) [Seleccionar]

       orden = "Select id, nombre from Enfermedades"
       t_enfermedades.CommandText = orden
       registro = t_enfermedades.ExecuteReader
       If registro.HasRows = True Then
           While registro.Read
               ComboBox_enfermedades.Items.Add(registro.GetString(1))
               ComboBox_enfermedades.ValueMember = registro.GetInt32(0)
           End While
       End If
       registro.Close()


lo que quiero es que me cargue el combobox con los registros de la base de datos, y quiero captar el ID del items seleccionado por el texbox
que estoy haciendo mal?
Título: Re: vb.net combobox con access
Publicado por: HdM en 12 Abril 2016, 13:37 PM
Aquí tienes un ejemplo. Es con mysql (en tu caso, oledb. Pero vamos, que es lo mismo). Sin bucle, no recorres la tabla registro a registro para cargar el combo.

https://www.webprogramacion.com/58/vbnet/rellenar-un-combobox.aspx (https://www.webprogramacion.com/58/vbnet/rellenar-un-combobox.aspx)

PD: que no te siente mal, pero creo que haces poco uso de google (u otros buscadores).
Título: Re: vb.net combobox con access[SOLUCION]
Publicado por: 01munrra en 13 Abril 2016, 04:51 AM
saludos HdM!!!

si había investigado, tenia días dando con el asunto, me faltaba documentación para resolverlo y aquí esta la solución:

Código (vbnet) [Seleccionar]

       Dim t_enfermedades As OleDbDataAdapter
       Dim dt As DataTable

       Using con As New OleDbConnection(cadena)
           orden = "Select id, nombre from Enfermedades"

           t_enfermedades = New OleDbDataAdapter(orden, bd)

           Try
               dt = New DataTable

               'Llenamos el DataTable con la consulta
               t_enfermedades.Fill(dt)

               'Cargamos el comboBox
               ComboBox_enfermedades.ValueMember = "id"
               ComboBox_enfermedades.DisplayMember = "nombre"
               ComboBox_enfermedades.DataSource = dt
           Catch ex As Exception
               MessageBox.Show("Se produjo un error : " & ex.Message)
           End Try

       End Using


gracias!!!