En mi proyecto inorm con VB.NET,en un formulario tengo varios ComboBox que quiero que carguen datos de varias tablas de una base de datos.
¿Cómo hago para que cargue todos los Items de cada Combo?
Gracias de antemano.

| ||||
Tengo esto pero me da error: Referencia a objeto no establecida como instancia de un objeto. ¿Qué hago mal? :b: Dim strconexion As String Dim objconexion As OleDbConnection Dim objcomando As OleDbDataAdapter Dim objds As New DataSet strconexion = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=..\BBDD\bd1.mdb" Try conn.Open() objconexion = New OleDbConnection(strconexion) objcomando = New OleDbDataAdapter("select * from Tabla1", strconexion) objcomando.Fill(objds, "NomCliente") Dim row Dim fila As DataRow For Each row In objds.Tables("NomCliente").Rows ComboBox1.Items.Add(row(0)) Next Catch ex As Exception MessageBox.Show(ex.Message) Finally conn.Close() 'result.Close() End Try |
| |||
Hola, te comento que soy llevo tres dias en ASPX y recien estoy empezando mas o menos a ver como funciona todo esto, pero me parece que veo un error, que por ahí te soluciona lo que andas buscando hacer, pero que de todas formas debes arreglar. Primero lo que haces es definir una variable de conexion, y le pones el nombre objconexion, pero luego llamas a un objeto inexistente conn, y le asignas el metodo Open, es lógico que te de el error primero porque no has definido ningún objeto CONN y segundo, porque de haberlo hecho, estaría mal ubicado. Prueba con algo como esto: Dim strconexion As String Dim objconexion As OleDbConnection Dim objcomando As OleDbDataAdapter Dim objds As New DataSet strconexion = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=..\BBDD\bd1.mdb" Try objconexion = New OleDbConnection(strconexion) objconexion.Open() objcomando = New OleDbDataAdapter("select * from Tabla1", objconexion) objcomando.Fill(objds, "NomCliente") Dim row Dim fila As DataRow For Each row In objds.Tables("NomCliente").Rows ComboBox1.Items.Add(row(0)) Next Catch ex As Exception MessageBox.Show(ex.Message) Finally conn.Close() 'result.Close() End Try |
| ||||
No es necesario iterar sobre los datos para agregar los valores al ComboBox:
Código:
Saludos Dim strconexion As String Dim objconexion As OleDbConnection Dim objcomando As OleDbDataAdapter Dim objds As New DataSet strconexion = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=..\BBDD\bd1.mdb" Try objconexion = New OleDbConnection(strconexion) objcomando = New OleDbDataAdapter("select * from Tabla1", strconexion) objcomando.Fill(objds, "NomCliente") ComboBox1.DataSource = objds ' También puede ser objds.Tables("NomCliente") ComboBox1.ValueMember = "Id_Tabla" ComboBox1.DisplayMember = "Campo_a_Mostrar" Catch ex As Exception MessageBox.Show(ex.Message) End Try |