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

No puedo enlazar ComboBox con tabla de BBDD

Estas en el tema de No puedo enlazar ComboBox con tabla de BBDD en el foro de .NET en Foros del Web. Hola todos, a ver si alguién me puede ayudar que esto ya me tiene loco. El problema es el siguiente. Estoy haciendo una aplicacion enlazada ...
  #1 (permalink)  
Antiguo 16/11/2010, 14:33
 
Fecha de Ingreso: julio-2009
Mensajes: 8
Antigüedad: 15 años, 3 meses
Puntos: 0
Exclamación No puedo enlazar ComboBox con tabla de BBDD

Hola todos, a ver si alguién me puede ayudar que esto ya me tiene loco. El problema es el siguiente. Estoy haciendo una aplicacion enlazada a base de datos. En una de las tablas, tengo varios campos donde aparecen IDs de registros de otras tablas. Por ejemplo, tengo un ID de tipo compromiso de pago.

Tabla 1: ID = 1 ; Tipo compromiso = Pagare
Tabla 2: Nombre Cliente = Pepe ; Tipo compromiso = 1 (enlaza con la tabla de arriba)

El caso es que para mostrar la tabla 2 de forma legible, en lugar de poner como tipo de compromiso el 1, quiero que se vea el texto que le pertenece, en este caso Pagare.

Si uso un ComboBox, lo enlazo a datos, y relleno los cuatro datos que me pide el Visual Studio en la ventana secundaria que sale al picar en la flechita que sale encima del propio control, me da problemas. No puedo hacer modificaciones en este campo. Es más, si voy navegando por la tabla, se me bloquean todos los controles. Es algo muy raro, porque he probado a reemplazar el ComboBox por un LixtBox y con el LixtBox si funciona perfectamente.

Os pediría que antes de contestar probárais si os funciona, porque como digo, con un ListBox si va, pero con el ComboBox no, y poniendo por supuesto los mismo datos en los parámetros que me pide.

A ver si alguién me puede ayudar, estoy usando el Visual Studio 2005, gracias.
  #2 (permalink)  
Antiguo 19/11/2010, 10:04
Avatar de gedarufi  
Fecha de Ingreso: diciembre-2008
Ubicación: Colombia
Mensajes: 540
Antigüedad: 15 años, 11 meses
Puntos: 22
Respuesta: No puedo enlazar ComboBox con tabla de BBDD

Lo que debes de hacer es enlazar la tabla 2 mediante las propiedades DataSource, DataMember, DisplayMember y ValueMember, y por otro lado debes de cargar la información de Tabla 1 en la propiedad Items del ComboBox.

Saludos
  #3 (permalink)  
Antiguo 19/11/2010, 10:37
 
Fecha de Ingreso: julio-2009
Mensajes: 8
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: No puedo enlazar ComboBox con tabla de BBDD

Hola, gracias por responder. Lo cierto es que no entiendo mucho lo que dices. En principio, si a un combobox le asigno esas propiedades, luego no me deja modificar su propiedad Items, porque al estar enlazado ya se llenaría sólo. Te añado imagen para que veas el caso particular y quizás así poder solucionarlo. Como digo, con los listbox si funciona, pero con el combobox no. La tabla que quiero mostrar en esta pantalla es "compromisopago" y uno de los campos a enlazar sería "idtipocompromiso", que más abajo ves la tabla, que se llama tipocompromiso.

http://www.imaxenes.com/imagen/combobox_error1nw6653.png.html

Si hago el enlace como con el listbox, NO funciona, pero con el listbox si funciona bien. Adjunto imagen de configuración.

http://www.imaxenes.com/imagen/combobox_error21ue84lz.png.html

Gracias de antemano.
  #4 (permalink)  
Antiguo 19/11/2010, 10:50
Avatar de gedarufi  
Fecha de Ingreso: diciembre-2008
Ubicación: Colombia
Mensajes: 540
Antigüedad: 15 años, 11 meses
Puntos: 22
Respuesta: No puedo enlazar ComboBox con tabla de BBDD

Prueba enlazando a tu DataSource la tabla 1 y el BindingSource a la tabla 2

Saludos
  #5 (permalink)  
Antiguo 19/11/2010, 11:06
 
Fecha de Ingreso: julio-2009
Mensajes: 8
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: No puedo enlazar ComboBox con tabla de BBDD

Hola otra vez, si pudieras decirme que poner en los campos:

Origen de datos:
Mostrar miembro:
Miembro de valor:
Valor seleccionado:

Porque no alcanzo a entender lo que me quieres decir. No llevo demasiado con el Visual 2005. No se si te refieres que como origen coja la otra tabla en lugar la que estoy cogiendo. Si es eso lo que dices, así no podría mostrar en la lista del combo los nombre de los tipos de compromiso de pago. A ver si consigo solucionarlo, si no lo tendré que dejar, a mi pesar, con el listbox.

Si alguién ha usado esto por favor, ayuda, gracias. Lo pero de todo es que debería ser simplemente así, pero en la práctica, no me está funcionando.
  #6 (permalink)  
Antiguo 16/12/2010, 07:31
 
Fecha de Ingreso: julio-2009
Mensajes: 8
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: No puedo enlazar ComboBox con tabla de BBDD

Hola, ¿nadie sabe como solucionar esto? Gracias.
  #7 (permalink)  
Antiguo 12/08/2012, 19:49
 
Fecha de Ingreso: octubre-2007
Mensajes: 1
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: No puedo enlazar ComboBox con tabla de BBDD

Estos hijos de puta pareciera que no entienden lo que preguntaste pero está completamente claro,.. no sé si ya hallaste la respuesta pero por si acaso ay te va

en muchas paginas al igual que aquí te dijeron cuales propiedades debes enlazar con la tabla2, lo que no te dicen es que a diferencia de los controles textbox la propiedad binding al cual enlazas tu combo no es "text", sino "selectedvalue"

cualquier duda me avisas, yo me maté buscando y ningún maldigo resolvió
  #8 (permalink)  
Antiguo 13/08/2012, 09:45
Avatar de Darsk  
Fecha de Ingreso: mayo-2011
Mensajes: 39
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: No puedo enlazar ComboBox con tabla de BBDD

Estimado, yo hice esto para agregar un valor, espero poder ayudar con este granito y que tomes la logica, saludos.



cbId.Items.Clear();
DataTable dt = new DataTable();
SqlCommand cmd = new SqlCommand("select id from usuarios",conn);
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dt);
string valorItem;


for (int i = 0; i < dt.Rows.Count; i++)
{


valorItem = (String)dt.Rows[i]["id"];


cbId.Items.Add(valorItem);

}

Etiquetas: bbdd, combobox, enlazar, tablas
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




La zona horaria es GMT -6. Ahora son las 09:36.