elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Ayuda con ComboBox
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con ComboBox  (Leído 13,321 veces)
proteus8

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Re: Ayuda con ComboBox
« Respuesta #10 en: 9 Marzo 2011, 19:01 pm »

muchachos muchas gracias por su ayuda, los combobox que lleno de forma manual los deje funcionando como quería , lo hice de esta manera:_

ComboBox12.Items.Insert(0, "SELECCIONE...")
ComboBox12.SelectedIndex = 0

con lo que aun estoy pegado es con los combobox que lleno con la base de datos.



En línea

proteus8

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Re: Ayuda con ComboBox
« Respuesta #11 en: 9 Marzo 2011, 19:02 pm »

Puedes poner los códigos?

Saludos
Novlucker este es mi codigo:
Novlucker así puse el código que me dijiste:
Código
  1. Dim adp2 As New SQLiteDataAdapter("select MED_MARCA from cmb_medidores ", cnnloc2)
  2.        adp2.Fill(vds2, "CMB_MEDIDORES")
  3.        ComboBox1.DataSource = vds2.Tables("CMB_MEDIDORES")
  4.        ComboBox1.DisplayMember = "MED_MARCA"
  5.        DataRow(dr = vds2.Tables("CMB_MEDIDORES").NewRow())
  6.        dr[0] = "SELECCIONE..." 'El valor que quieras
  7.        dr([x] = "MED_MARCA") 'La que sea que estes mostrando en el combobox
  8.        vds2.Tables("CMB_MEDIDORES").Rows.InsertAt(dr, 0)


« Última modificación: 9 Marzo 2011, 19:14 pm por Novlucker » En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: Ayuda con ComboBox
« Respuesta #12 en: 9 Marzo 2011, 19:18 pm »

Intenta cambiando los valores de la tabla antes de enlazarla al combobox y realizar el databind.

Espero que estes cambiando esa x que puse a modo de ejemplo en la columna del datarow

¿Y el otro que dices que se muestra vacio? estas cargando antes los valores al combobox en el onLoad de tu formulario?

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
proteus8

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Re: Ayuda con ComboBox
« Respuesta #13 en: 9 Marzo 2011, 19:32 pm »

Novlucker
 gracias nuevamente,

si, lo los valores vacíos ya quedo solucionado.

con los del datarow lo que me pasa es que me da el siguiente error:

  ("DataRow" es un tipo y no se puede usar como expresión)
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: Ayuda con ComboBox
« Respuesta #14 en: 9 Marzo 2011, 19:42 pm »

Ahora lo veo, por que pones esos paréntesis donde no van? :huh:
Código
  1. DataRow(dr = vds2.Tables("CMB_MEDIDORES").NewRow())
Además, no veo que hayas convertido nada a VB.NET
Código
  1. Dim dr as DataRow
  2. dr = 'bla bla bla

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: Ayuda con ComboBox
« Respuesta #15 en: 9 Marzo 2011, 20:50 pm »

Luego de que le pasas el DataSource, dale DataBind, y luego agregas los Items. Si te falla create una clase POCO para esa entidad y las metes en una lista, la cual lleva como primer item uno que dice "Seleccione"

Esa lista la metes en el data source. y Listo funciona.

Un saludo!
En línea

proteus8

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Re: Ayuda con ComboBox
« Respuesta #16 en: 9 Marzo 2011, 21:24 pm »

muchas gracias a todos, y disculpen por ser tan cabeza dura pero es que soy nuevo en esto de vb.net es mas esto es casi lo primero que hago, me podrían poner un ejemplo de como hacerlo, si no es mucha la molestia.
desde ya muchas gracias.
En línea

seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Ayuda con ComboBox
« Respuesta #17 en: 10 Marzo 2011, 06:15 am »

confieso que yo nunca he usado las propiedades .DataSource y .DisplayMember de los combo para trabajar con ellos, lo hago a la "vieja escuela".

simplemente hago una consulta y que me devuelva un datareader, ese datareader lo recorro y voy llenando el combo con "items.add" y listo...si quiero cambio valores al vuelo por asi decirlo, o sea tengo mas control sobre los datos que me vienen y si quero hacer concatenaciones o alguna logica en el codigo, o si queres agregar mas items todavia a los que te vienen podes hacerlo, con este metodo me lo permite, es como llenar un listview digamos.

aca te paso un ejemplo, si queres usalo.

Código
  1.    Private Sub CargarCombo()
  2.  
  3.        Dim drDatos As SqlDataReader = oUsuarios.TraerUsuarios ' aca dentro hago la consulta que devuelve el datareader con los registros
  4.  
  5.        cmbUsuarios.Items.Clear()
  6.  
  7.        While drDatos.Read() ' aca recorro los registros y voy llenando el combo, si queres aca podes concatenar campos, o hacer lo que quieras.
  8.            cmbUsuarios.Items.Add(New Combo_itemData(drDatos("nombre"), drDatos("id")))
  9.        End While
  10.  
  11.        drDatos.Close()
  12.        drDatos = Nothing
  13.    End Sub

esa clase "New Combo_itemData" es una clase que imita la propiedad ItemData del visual basic 6, si no lo sabes te explico que la propiedad ItemData era para almacenar un "id" para identificar el item al seleccionarlo, como en vb net no esta mas esta propiedad, hay que hacer una clase aparte que lo imita, aca te explica bien el guille como hacerla.

ItemData en .NET

si vos queres agregar un item por defecto al combo por ejemplo "SELECCIONE..."
, es facil, en el codigo anterior, despues de usar el Clear() para limpiar el combo, debes agregar un Item. lo tenes que hacer antes de entrar al bucle del While, entonces por mas que el datareader no tenga datos, el item "SELECCIONE..." siempre va a estar.

te quedaria asi:

Código
  1. Private Sub CargarCombo()
  2.  
  3.        Dim drDatos As SqlDataReader = oUsuarios.TraerUsuarios ' aca dentro hago la consulta que devuelve el datareader con los registros
  4.  
  5.        cmbUsuarios.Items.Clear()
  6.  
  7.        cmbUsuarios.Items.Add(New Combo_itemData("SELECCIONE...", "...")) ' item por defecto
  8.  
  9.        While drDatos.Read() ' aca recorro los registros y voy llenando el combo, si queres aca podes concatenar campos, o hacer lo que quieras.
  10.            cmbUsuarios.Items.Add(New Combo_itemData(drDatos("nombre"), drDatos("id")))
  11.        End While
  12.  
  13.        drDatos.Close()
  14.        drDatos = Nothing
  15.    End Sub

el item "SELECCIONE..." siempre va a estar en la posicion indice 0 del combo, por lo tanto es facil validarlo despues al momento de saber cual item seleccionaste.

saludos.
En línea

proteus8

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Re: Ayuda con ComboBox
« Respuesta #18 en: 10 Marzo 2011, 13:26 pm »

seba123neo gracias por tu ayuda,hice lo que me dijiste y me quedo de esta manera el código:
Código
  1.   consulta = String.Format("select MED_MARCA from cmb_medidores ")
  2.        Dim Sqlstr As New SQLiteCommand(consulta, cnnloc2)
  3.        Dim drDatos As SQLiteDataReader = Sqlstr.ExecuteReader(CommandBehavior.CloseConnection) ' aca dentro hago la consulta que devuelve el datareader con los registros
  4.        ComboBox1.Items.Clear()
  5.        ComboBox1.Items.Add(New Combo_itemData("SELECCIONE...", "...")) ' item por defecto
  6.        While drDatos.Read() ' aca recorro los registros y voy llenando el combo, si queres aca podes concatenar campos, o hacer lo que quieras.
  7.            ComboBox1.Items.Add(New Combo_itemData(drDatos("MED_MARCA"), drDatos("id")))
  8.        End While
  9.  
  10.        drDatos.Close()
  11.        drDatos = Nothing

pero me da error en la siguiente linea:

ComboBox1.Items.Add(New Combo_itemData(drDatos("MED_MARCA"), drDatos("id")))
 me dice algo como "IndexOutOfRangeException"

"MED_MARCA" es el campo de mi base de datos que quiero mostrar en el combobox


En línea

seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Ayuda con ComboBox
« Respuesta #19 en: 11 Marzo 2011, 00:09 am »

eso es un error de campo, el campo "id" existe ?

Citar
ComboBox1.Items.Add(New Combo_itemData(drDatos("MED_MARCA"), drDatos("id")))

ese lo habia puesto yo de ejemplo, vos cambialo por el campo que identifique al registro.

saludos.
En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ayuda con un combobox
Java
kurama12 1 2,993 Último mensaje 25 Mayo 2007, 18:00 pm
por Casidiablo
Ayuda con combobox en php
PHP
Dannysoft 2 2,995 Último mensaje 12 Julio 2008, 23:47 pm
por Hans el Topo
AYUDA CON COMBOBOX
Programación Visual Basic
hannah 1 1,661 Último mensaje 17 Octubre 2008, 20:57 pm
por cobein
[Ayuda] ComboBox en VB6 [Solucionado]
Programación Visual Basic
DeSsy 7 4,704 Último mensaje 11 Febrero 2011, 17:49 pm
por DeSsy
ayuda con combobox y jqgrid
Desarrollo Web
landerzx 0 1,799 Último mensaje 11 Enero 2013, 22:43 pm
por landerzx
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines