Foros del Web » Programación para mayores de 30 ;) » .NET »

Llenar Combobox con datos de BD SQL Server 2005

Estas en el tema de Llenar Combobox con datos de BD SQL Server 2005 en el foro de .NET en Foros del Web. Holas, espero me puedan ayudar con esto. Bueno, estoy trabajando en visual Studio 2008, utilizando SQL Server 2005 y estoy desarrollando una aplicacion (Un Winform). ...
  #1 (permalink)  
Antiguo 08/11/2009, 13:28
 
Fecha de Ingreso: octubre-2009
Mensajes: 70
Antigüedad: 15 años, 1 mes
Puntos: 0
Pregunta Llenar Combobox con datos de BD SQL Server 2005

Holas, espero me puedan ayudar con esto.
Bueno, estoy trabajando en visual Studio 2008, utilizando SQL Server 2005 y estoy desarrollando una aplicacion (Un Winform).
Mi duda es la siguiente, me interesa llenar un Combobox con datos que tengo en la Base de Datos (Los datos corresponden a Regiones del Pais), precisamente con los nombres de las regiones, estos registros tiene su identificador respectivo.
Mi problema es, quiero llenar el Combobox con los nombres de las regiones, pero tambien quiero capturar el Identificador (o el Id) de la region seleccionada.

Eso es, espero me puedan ayudar con esto, y muchas gracias por la buena onda y tomarse el tiempo en responder.
De antemano muchas gracias
Adios!
  #2 (permalink)  
Antiguo 09/11/2009, 07:15
Avatar de elsaky  
Fecha de Ingreso: junio-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 53
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

Hola

cuando cargas el combo asignas los campos al combo

Combobox.DisplayMember = campo_que_muestro
Combobox.ValueMember = campo_clave


despues en el combo podes acceder a cualquiera de los dos valores
Combobox.Text ' te muestra el texto seleccionado
Combobox.SelectedValue 'te muestra la clave o Id seleccionado


si no sabes cargar el combo avisame que te paso ejemplo

saludos
  #3 (permalink)  
Antiguo 09/11/2009, 08:58
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 15 años, 2 meses
Puntos: 16
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

Te dejo un ejemplo usando SqlDataAdapter y DataTable
Código:
Using cn As New SqlConnection(cadena_conexion)
      Using cmd As New SqlCommand("Select Id, Region From Regiones", cn)
            Using da As New SqlDataAdapter(cmd)
                  Dim dt As New Datatable("Regiones")
                  da.Fill(dt)
                  ComboBox1.DisplayMember = "Region"
                  ComboBox1.ValueMember = "Id"
            End Using
      End Using
End Using
Como dice elsaky para recuperar el código del elemento seleccionado usa Combobox1.SelectedValue

PD:Obviamente debes reemplazar los parámetros cadena_conexion, la consulta Select Id, Region From Regiones sería bueno que la reemplazes por un procedimiento almacenado.

Espero te ayude
__________________
Eduardo Peredo
Wigoin
  #4 (permalink)  
Antiguo 10/11/2009, 13:24
 
Fecha de Ingreso: octubre-2009
Mensajes: 70
Antigüedad: 15 años, 1 mes
Puntos: 0
De acuerdo Respuesta: Llenar Combobox con datos de BD SQL Server 2005

Oh wena muchas gracias, me han servido mucho las respuestas.
Gracias.... Totales
  #5 (permalink)  
Antiguo 24/11/2009, 21:17
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Ubicación: Trujillo - Peru
Mensajes: 341
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

ese codigo donde va ? en el load o en una clase ?

gracias
  #6 (permalink)  
Antiguo 24/11/2009, 21:23
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 15 años, 2 meses
Puntos: 16
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

En el load o en alguna clase, depende del uso que quieras darle.

Saludos
__________________
Eduardo Peredo
Wigoin
  #7 (permalink)  
Antiguo 24/11/2009, 21:28
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Ubicación: Trujillo - Peru
Mensajes: 341
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

ESA ES MI CADENA DE CONECCION (EN MODULO)
Module mDatos
Public cadenaConx As String = "Data Source=LALO-PC\SQLEXPRESS;Initial Catalog=BDTRAMITE;Integrated Security=True"
End Module

Y ESTA ES MI LOAD
Imports System.Data.SqlClient

Public Class MantenimientoEmpleado

Private Sub MantenimientoEmpleado_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Using cn As New SqlConnection(cadena_conexion)
Using cmd As New SqlCommand("SELECT CODIGO, NOMBRE FROM AREA", cn)
Using da As New SqlDataAdapter(cmd)
Dim dt As New DataTable("AREA")
da.Fill(dt)
cboArea.DisplayMember = "NOMBRE"
cboArea.ValueMember = "CODIGO"
End Using
End Using
End Using
End Sub
End Class



PERO LO MALO ES QUE ME SALE ERROR EN CADENA_CONEXION, NO LLAMA LA MIA ?
A Q SE DEBERA
  #8 (permalink)  
Antiguo 24/11/2009, 21:31
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 15 años, 2 meses
Puntos: 16
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

Pero fijate bien, tu cadena de conexión se llama cadenaConx y tu le asignas en el SqlConnection una de nombre cadena_conexion...
Lo correcto sería:
Código vb.net:
Ver original
  1. Using cn As New SqlConnection(cadenaConx)
  2. 'el mismo código...

__________________
Eduardo Peredo
Wigoin
  #9 (permalink)  
Antiguo 24/11/2009, 22:09
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Ubicación: Trujillo - Peru
Mensajes: 341
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

cadenaConx --> la puse así pero me sale que no se a declarado el nombre

ahora si pongo Data Source=LALO-PC\SQLEXPRESS;Initial Catalog=BDTRAMITE;Integrated Security=True ---> alli sale perfecto, pero al abrir el formulario no carga nada, no se a q se debe

gracias por tu apoyo.
  #10 (permalink)  
Antiguo 25/11/2009, 06:54
Avatar de Dimax  
Fecha de Ingreso: octubre-2009
Mensajes: 33
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

Código c#:
Ver original
  1. cadena = "Data Source=.\\SQLEXPRESS;Initial Catalog=BDTRAMITE;Integrated Security=True";
  2. miConexion = new SqlConnection(cadena);
  3. miConexion.Open();
  4.  
  5. codigo combobox....

prueba así
  #11 (permalink)  
Antiguo 25/11/2009, 07:46
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 15 años, 2 meses
Puntos: 16
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

En visual basic no es necesario indicar las 2 barras en todo caso prueba con el nombre del módulo y la variable.
Código vb.net:
Ver original
  1. Using cn As New SqlConnection(mDatos.cadenaConx)
  2. 'código...

Cita:
pero al abrir el formulario no carga nada, no se a q se debe
No te sale algún error?? Estás seguro que tienes datos en esa tabla??
__________________
Eduardo Peredo
Wigoin
  #12 (permalink)  
Antiguo 07/06/2012, 10:46
Avatar de yamiblancoc  
Fecha de Ingreso: agosto-2011
Mensajes: 103
Antigüedad: 13 años, 3 meses
Puntos: 4
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

buenas tarde, como llamo el stored procedure? me explico yo necesito tomar el valor de otro combobox1 y que el stored procedure me tome el valor del combobox 1 para poder cargar el combobox2
  #13 (permalink)  
Antiguo 07/06/2012, 10:59
Avatar de cristiantorres  
Fecha de Ingreso: marzo-2012
Mensajes: 383
Antigüedad: 12 años, 8 meses
Puntos: 61
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

Hola

Para mostrar los datos de una tabla en un combobox tienes que hacer lo siguiente.

Primero tienes que obtener los datos de la bd.
En este caso obtengo los datos de una tabla llamada paises y la cadena de conexion la tengo en el app.config
Código C#:
Ver original
  1. //metodo para cargar los datos de la bd
  2.       public static DataTable Datos()
  3.       {
  4.           DataTable dt = new DataTable();
  5.  
  6.           SqlConnection conexion = new SqlConnection(ConfigurationManager.ConnectionStrings["default"].ToString());//cadena conexion
  7.  
  8.           string consulta = "SELECT * FROM PAISES"; //consulta a la tabla paises
  9.           SqlCommand comando = new SqlCommand(consulta,conexion);
  10.  
  11.           SqlDataAdapter adap = new SqlDataAdapter(comando);
  12.  
  13.           adap.Fill(dt);
  14.           return dt;
  15.       }

Luego en el evento load del formulario cargas los datos en el comobobox
Código C#:
Ver original
  1. // Cargo los datos que tendra el combobox
  2.   comboBox1.DataSource = AutoCompleClass.Datos(); //obtengo los datos
  3.   comboBox1.DisplayMember = "pais"; //campo que se mostrara
  4.   comboBox1.ValueMember = "id"; //capturas el valor del id

En mi blog tengo un articulo donde podes ver como se hace aunque el articulo esta relacionado a como usar el autocomplete, pero tambien aplico lo que quieres busca las lineas de código que te he puesto http://cristiantorresalfaro.blogspot...ombobox-c.html
__________________
Visita mi Blog C#, vb.net, asp.net, sql, java y mas...
Blog Cristian Torres
  #14 (permalink)  
Antiguo 09/06/2012, 15:43
Avatar de edbc92  
Fecha de Ingreso: octubre-2010
Ubicación: Lima - Los Olivos
Mensajes: 93
Antigüedad: 14 años
Puntos: 5
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

Hey! no es necesario de reabrir este post, debido a que es de hace 3 añox aprox. Sería mejor que abrieras un nuevo tema...
__________________
"Por medio de la perseverancia el caracol llegó al arca."
CHARLES SPURGEON
  #15 (permalink)  
Antiguo 03/12/2014, 17:23
 
Fecha de Ingreso: diciembre-2014
Mensajes: 1
Antigüedad: 9 años, 11 meses
Puntos: 0
Respuesta: Llenar Combobox con datos de BD SQL Server 2005

necesito ayuda soy nuevo en visual basic.
tengo un combobox que me muestra los nombres de proveedores que se encuentra en la tabla proveedor hasta ahi sta bien, el problema es ke necesito guardar el id_proveedor en una tabla llamada entrada y no se komo acerle tengo estos codigos.

este es el codigo que muestra los proveedores del combobox

Código vb:
Ver original
  1. Private Sub cargarproveedor()
  2. AdapterCats = New MySqlDataAdapter("select * from proveedor", _conexion)
  3. CDatasetCats = New DataSet()
  4. _conexion.Open()
  5. AdapterCats.Fill(CDatasetCats, "proveedor")
  6. _conexion.Close()
  7. cbbproveedor.DataSource = CDatasetCats.Tables("proveedor")
  8. cbbproveedor.DisplayMember = CDatasetCats.Tables("proveedor").Columns("nombre") .ToString
  9. cbbproveedor.ValueMember = CDatasetCats.Tables("proveedor").Columns("id_proveedor").ToString
  10. End Sub

si alguien me podria ayudar se los agradeceria.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 2 personas




La zona horaria es GMT -6. Ahora son las 14:00.