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

[SOLUCIONADO] Combobox varias columnas Selected

Estas en el tema de Combobox varias columnas Selected en el foro de .NET en Foros del Web. Buenos días. He cargado un combobox con 3 columnas: DisplayMember= NOmbre - Id ValueMember = Id Pero cuando quiero cargar el valor del combobox (desde ...
  #1 (permalink)  
Antiguo 21/11/2016, 01:51
 
Fecha de Ingreso: noviembre-2009
Mensajes: 15
Antigüedad: 15 años
Puntos: 0
Combobox varias columnas Selected

Buenos días.
He cargado un combobox con 3 columnas:
DisplayMember= NOmbre - Id
ValueMember = Id

Pero cuando quiero cargar el valor del combobox (desde un valor de base de datos): combo.selecteditem=Dataset.Campo
No funciona, y toma SelectedItem=""

En la base de datos guardo los Id, y si por ejemplo quiero que el elemento del combo seleccionado sea Id=4, normalmente suelo poner:
combo.selecteditem=4
Pero si tiene más de una columna, esto no funciona.

¿Alguien sabe cómo se hace?
Gracias
  #2 (permalink)  
Antiguo 25/11/2016, 09:37
 
Fecha de Ingreso: diciembre-2010
Mensajes: 63
Antigüedad: 13 años, 10 meses
Puntos: 5
Respuesta: Combobox varias columnas Selected

Podrias hacerlo asi

combo.selectedValue=4
__________________
En la vida siempre encontraras a alguien inferior y Superior a ti
  #3 (permalink)  
Antiguo 27/11/2016, 15:39
 
Fecha de Ingreso: noviembre-2009
Mensajes: 15
Antigüedad: 15 años
Puntos: 0
Respuesta: Combobox varias columnas Selected

Muchas gracias por tu respuesta, pero no me funciona.
Supongo que debe ser porque el "value" en este caso no es =4, sino que como el combo tiene dos columnas, sería algo así como "Juan - 4", por eso creo que no funciona.
Sigo sin saber cuál puede ser la solución.
  #4 (permalink)  
Antiguo 27/11/2016, 16:42
 
Fecha de Ingreso: mayo-2015
Mensajes: 15
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: Combobox varias columnas Selected

Voy a suponer que cuando dices tablas te refieres a una base de datos sql.
No puedes poner 2 columnas en un combobox. lo que tienes que hacer es en el select que te trae los valores de la base de datos traer los 2 campos como uno solo:
Código SQL:
Ver original
  1. SELECT (columna_a + " - " + columna_b) AS NOMBRE FROM ...
  #5 (permalink)  
Antiguo 28/11/2016, 03:14
 
Fecha de Ingreso: noviembre-2009
Mensajes: 15
Antigüedad: 15 años
Puntos: 0
Respuesta: Combobox varias columnas Selected

Muchas gracias Pabloryser, eso es exactamente lo que hago para la carga. El problema está a la hora de poner el combo.selecteditem o combo.selectedvalue, que nunca encuentra un valor igual al que yo he "combinado"
Aunque creo que de momento, encontré la solución: consiste en buscar dentro del combo el valor del id que quiero:

Function Busca(ByVal value As Object, combo As ComboBox) As Object
If Not IsDBNull(value) Then
For Each item As Object In combo.Items
Dim obj As Object
obj = fgstrExtraeCodigo(item)
If obj = value Then
Return item
End If
Next
Return Nothing
Else
Return Nothing
End If
End Function

Function fgstrExtraeCodigo(ByRef texto As String) As String
Dim punt As Short
punt= InStr(texto, "·")
If punt> 0 Then
fgstrExtraeCodigo = RTrim(LTrim(Mid(texto, punt+ 1)))
Else
fgstrExtraeCodigo = ""
End If
End Function

Con estas funciones, ya puedo elegir el combo.SelectedItem
combo.SelectedItem = Busca(valor,combo)

Etiquetas: combobox, selectedindex, selectedvalue
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 14:24.