Busqueda en Combo con ValueMember

30/03/2007 - 21:23 por Juan Suarez | Informe spam
Hola que tal?

En una aplicacion Windows tengo un ComboBox, lo estoy llenando a traves de:

DisplayMember
ValueMember

Hasta aca todo va muy bien, ahora quiero saber como puedo hacer para buscar
un valor que se encuentra almacenado en ValueMember.
El metodo FinString realiza la busqueda en DisplayMember.

Estoy intentando hacerlo asi:

for(int i=0; i < cmbPrueba.Items.Count ;i++)
{
MessageBox.Show (cmbPrueba.ValueMember[i].ToString());
}

La linea del ciclo me dice el total de Items que tiene el combo y esta bien.
En el MessageBox quisiera mostrar el contenido de ValueMember, pero me
muestra unas letras que no tienen nada que ver con el contenido de este.

Existe algún método para realizar esta busqueda? o Alguien podria ayudarme a
complementar lo que estoy haciendo.

Hasta pronto y muchas gracias.


Juan Suárez
sistemasgyw@une.net.co

Preguntas similare

Leer las respuestas

#1 Juan Diego Bueno
30/03/2007 - 21:35 | Informe spam
Hola Juan:

Si el combo está asociado a un datasource que a su vez hace referencia a un
datatable, te tocaría ir a la fila i de ese datatable y obtener el valor de
la columna en cuestión.

Saludos

"Juan Suarez" escribió en el mensaje
news:%
Hola que tal?

En una aplicacion Windows tengo un ComboBox, lo estoy llenando a traves
de:

DisplayMember
ValueMember

Hasta aca todo va muy bien, ahora quiero saber como puedo hacer para
buscar un valor que se encuentra almacenado en ValueMember.
El metodo FinString realiza la busqueda en DisplayMember.

Estoy intentando hacerlo asi:

for(int i=0; i < cmbPrueba.Items.Count ;i++)
{
MessageBox.Show (cmbPrueba.ValueMember[i].ToString());
}

La linea del ciclo me dice el total de Items que tiene el combo y esta
bien. En el MessageBox quisiera mostrar el contenido de ValueMember, pero
me muestra unas letras que no tienen nada que ver con el contenido de
este.

Existe algún método para realizar esta busqueda? o Alguien podria ayudarme
a complementar lo que estoy haciendo.

Hasta pronto y muchas gracias.


Juan Suárez






Estoy utilizando la versión gratuita de SPAMfighter para usuarios privados.
Ha eliminado 11956 correos spam hasta la fecha.
Los abonados no tienen este mensaje en sus correos.
¡Pruebe SPAMfighter gratis ya!
Respuesta Responder a este mensaje
#2 Juan Diego Bueno
30/03/2007 - 22:07 | Informe spam
No se por qué dices que no tienes acceso al dataset. Para asignarlo como
datasource necesitas tener acceso, y por el código que pones, es así.

Para obtener el value de ese item sería:
dsLlenarCombo.Tables[0].Rows[i][strCodigo].ToString()

Si usas el mismo dataset para varios combos, los índices de las filas y del
combo serán los mismos

Saludos

"Juan Suarez" escribió en el mensaje
news:
Hola Juan Diego, Muchas gracias por tu respuesta.

Con un DataSet lleno el combo asi:

Combo.DataSource = dsLlenarCombo.Tables[0];
Combo.DisplayMember = strDescripcion;
Combo.ValueMember = strCodigo;

Esto lo tengo dentro de una clase que se encuentra en mi proyecto.
Simplemente cuando voy a llenar un combo hago el llamado a la clase. y le
doy unos parametros. Con esa misma clase puedo llenar cuantos combos
necesite, es decir, no creo un dataset Nuevo para cada combo.

A parte de no tener alcance al dataset, pues se encuentra en una clase
aparte Como hago en la situacion que acabo de mensionar cuando con la
misma clase se llenaron varios combos?

Hasta Pronto y muchas gracias.


Juan Suárez


"Juan Diego Bueno" escribió en el mensaje
news:
Hola Juan:

Si el combo está asociado a un datasource que a su vez hace referencia a
un datatable, te tocaría ir a la fila i de ese datatable y obtener el
valor de la columna en cuestión.

Saludos

"Juan Suarez" escribió en el mensaje
news:%
Hola que tal?

En una aplicacion Windows tengo un ComboBox, lo estoy llenando a traves
de:

DisplayMember
ValueMember

Hasta aca todo va muy bien, ahora quiero saber como puedo hacer para
buscar un valor que se encuentra almacenado en ValueMember.
El metodo FinString realiza la busqueda en DisplayMember.

Estoy intentando hacerlo asi:

for(int i=0; i < cmbPrueba.Items.Count ;i++)
{
MessageBox.Show (cmbPrueba.ValueMember[i].ToString());
}

La linea del ciclo me dice el total de Items que tiene el combo y esta
bien. En el MessageBox quisiera mostrar el contenido de ValueMember,
pero me muestra unas letras que no tienen nada que ver con el contenido
de este.

Existe algún método para realizar esta busqueda? o Alguien podria
ayudarme a complementar lo que estoy haciendo.

Hasta pronto y muchas gracias.


Juan Suárez






Estoy utilizando la versión gratuita de SPAMfighter para usuarios
privados.
Ha eliminado 11956 correos spam hasta la fecha.
Los abonados no tienen este mensaje en sus correos.
¡Pruebe SPAMfighter gratis ya!









Estoy utilizando la versión gratuita de SPAMfighter para usuarios privados.
Ha eliminado 11956 correos spam hasta la fecha.
Los abonados no tienen este mensaje en sus correos.
¡Pruebe SPAMfighter gratis ya!
Respuesta Responder a este mensaje
#3 Juan Suarez
30/03/2007 - 22:17 | Informe spam
Hola Juan Diego, Muchas gracias por tu respuesta.

Con un DataSet lleno el combo asi:

Combo.DataSource = dsLlenarCombo.Tables[0];
Combo.DisplayMember = strDescripcion;
Combo.ValueMember = strCodigo;

Esto lo tengo dentro de una clase que se encuentra en mi proyecto.
Simplemente cuando voy a llenar un combo hago el llamado a la clase. y le
doy unos parametros. Con esa misma clase puedo llenar cuantos combos
necesite, es decir, no creo un dataset Nuevo para cada combo.

A parte de no tener alcance al dataset, pues se encuentra en una clase
aparte Como hago en la situacion que acabo de mensionar cuando con la misma
clase se llenaron varios combos?

Hasta Pronto y muchas gracias.


Juan Suárez


"Juan Diego Bueno" escribió en el mensaje
news:
Hola Juan:

Si el combo está asociado a un datasource que a su vez hace referencia a
un datatable, te tocaría ir a la fila i de ese datatable y obtener el
valor de la columna en cuestión.

Saludos

"Juan Suarez" escribió en el mensaje
news:%
Hola que tal?

En una aplicacion Windows tengo un ComboBox, lo estoy llenando a traves
de:

DisplayMember
ValueMember

Hasta aca todo va muy bien, ahora quiero saber como puedo hacer para
buscar un valor que se encuentra almacenado en ValueMember.
El metodo FinString realiza la busqueda en DisplayMember.

Estoy intentando hacerlo asi:

for(int i=0; i < cmbPrueba.Items.Count ;i++)
{
MessageBox.Show (cmbPrueba.ValueMember[i].ToString());
}

La linea del ciclo me dice el total de Items que tiene el combo y esta
bien. En el MessageBox quisiera mostrar el contenido de ValueMember, pero
me muestra unas letras que no tienen nada que ver con el contenido de
este.

Existe algún método para realizar esta busqueda? o Alguien podria
ayudarme a complementar lo que estoy haciendo.

Hasta pronto y muchas gracias.


Juan Suárez






Estoy utilizando la versión gratuita de SPAMfighter para usuarios
privados.
Ha eliminado 11956 correos spam hasta la fecha.
Los abonados no tienen este mensaje en sus correos.
¡Pruebe SPAMfighter gratis ya!


Respuesta Responder a este mensaje
#4 Juan Suarez
30/03/2007 - 23:22 | Informe spam
Hola Juan Diego.

Me estaba complicando la vida. Se hace con una linea de codigo:

Combo.SelectedValue = Valor

Simplemente me enrede porque al principio intente con
ValueMemberentonces me generaba una excepcion.

Suerte y muchas gracias por tus respuetas.

Juan Suárez


"Juan Diego Bueno" escribió en el mensaje
news:
No se por qué dices que no tienes acceso al dataset. Para asignarlo como
datasource necesitas tener acceso, y por el código que pones, es así.

Para obtener el value de ese item sería:
dsLlenarCombo.Tables[0].Rows[i][strCodigo].ToString()

Si usas el mismo dataset para varios combos, los índices de las filas y
del combo serán los mismos

Saludos

"Juan Suarez" escribió en el mensaje
news:
Hola Juan Diego, Muchas gracias por tu respuesta.

Con un DataSet lleno el combo asi:

Combo.DataSource = dsLlenarCombo.Tables[0];
Combo.DisplayMember = strDescripcion;
Combo.ValueMember = strCodigo;

Esto lo tengo dentro de una clase que se encuentra en mi proyecto.
Simplemente cuando voy a llenar un combo hago el llamado a la clase. y le
doy unos parametros. Con esa misma clase puedo llenar cuantos combos
necesite, es decir, no creo un dataset Nuevo para cada combo.

A parte de no tener alcance al dataset, pues se encuentra en una clase
aparte Como hago en la situacion que acabo de mensionar cuando con la
misma clase se llenaron varios combos?

Hasta Pronto y muchas gracias.


Juan Suárez


"Juan Diego Bueno" escribió en el mensaje
news:
Hola Juan:

Si el combo está asociado a un datasource que a su vez hace referencia a
un datatable, te tocaría ir a la fila i de ese datatable y obtener el
valor de la columna en cuestión.

Saludos

"Juan Suarez" escribió en el mensaje
news:%
Hola que tal?

En una aplicacion Windows tengo un ComboBox, lo estoy llenando a traves
de:

DisplayMember
ValueMember

Hasta aca todo va muy bien, ahora quiero saber como puedo hacer para
buscar un valor que se encuentra almacenado en ValueMember.
El metodo FinString realiza la busqueda en DisplayMember.

Estoy intentando hacerlo asi:

for(int i=0; i < cmbPrueba.Items.Count ;i++)
{
MessageBox.Show (cmbPrueba.ValueMember[i].ToString());
}

La linea del ciclo me dice el total de Items que tiene el combo y esta
bien. En el MessageBox quisiera mostrar el contenido de ValueMember,
pero me muestra unas letras que no tienen nada que ver con el contenido
de este.

Existe algún método para realizar esta busqueda? o Alguien podria
ayudarme a complementar lo que estoy haciendo.

Hasta pronto y muchas gracias.


Juan Suárez






Estoy utilizando la versión gratuita de SPAMfighter para usuarios
privados.
Ha eliminado 11956 correos spam hasta la fecha.
Los abonados no tienen este mensaje en sus correos.
¡Pruebe SPAMfighter gratis ya!









Estoy utilizando la versión gratuita de SPAMfighter para usuarios
privados.
Ha eliminado 11956 correos spam hasta la fecha.
Los abonados no tienen este mensaje en sus correos.
¡Pruebe SPAMfighter gratis ya!


Respuesta Responder a este mensaje
#5 Juan Diego Bueno
30/03/2007 - 23:31 | Informe spam
Claro, así se hace si quieres obtener el valor seleccionado. Pero yo pensé
que querías obtener el valor según un índice (no necesariamente el
seleccionado)

Saludos

"Juan Suarez" escribió en el mensaje
news:%
Hola Juan Diego.

Me estaba complicando la vida. Se hace con una linea de codigo:

Combo.SelectedValue = Valor

Simplemente me enrede porque al principio intente con
ValueMemberentonces me generaba una excepcion.

Suerte y muchas gracias por tus respuetas.

Juan Suárez


"Juan Diego Bueno" escribió en el mensaje
news:
No se por qué dices que no tienes acceso al dataset. Para asignarlo como
datasource necesitas tener acceso, y por el código que pones, es así.

Para obtener el value de ese item sería:
dsLlenarCombo.Tables[0].Rows[i][strCodigo].ToString()

Si usas el mismo dataset para varios combos, los índices de las filas y
del combo serán los mismos

Saludos

"Juan Suarez" escribió en el mensaje
news:
Hola Juan Diego, Muchas gracias por tu respuesta.

Con un DataSet lleno el combo asi:

Combo.DataSource = dsLlenarCombo.Tables[0];
Combo.DisplayMember = strDescripcion;
Combo.ValueMember = strCodigo;

Esto lo tengo dentro de una clase que se encuentra en mi proyecto.
Simplemente cuando voy a llenar un combo hago el llamado a la clase. y
le doy unos parametros. Con esa misma clase puedo llenar cuantos combos
necesite, es decir, no creo un dataset Nuevo para cada combo.

A parte de no tener alcance al dataset, pues se encuentra en una clase
aparte Como hago en la situacion que acabo de mensionar cuando con la
misma clase se llenaron varios combos?

Hasta Pronto y muchas gracias.


Juan Suárez


"Juan Diego Bueno" escribió en el mensaje
news:
Hola Juan:

Si el combo está asociado a un datasource que a su vez hace referencia
a un datatable, te tocaría ir a la fila i de ese datatable y obtener el
valor de la columna en cuestión.

Saludos

"Juan Suarez" escribió en el mensaje
news:%
Hola que tal?

En una aplicacion Windows tengo un ComboBox, lo estoy llenando a
traves de:

DisplayMember
ValueMember

Hasta aca todo va muy bien, ahora quiero saber como puedo hacer para
buscar un valor que se encuentra almacenado en ValueMember.
El metodo FinString realiza la busqueda en DisplayMember.

Estoy intentando hacerlo asi:

for(int i=0; i < cmbPrueba.Items.Count ;i++)
{
MessageBox.Show (cmbPrueba.ValueMember[i].ToString());
}

La linea del ciclo me dice el total de Items que tiene el combo y esta
bien. En el MessageBox quisiera mostrar el contenido de ValueMember,
pero me muestra unas letras que no tienen nada que ver con el
contenido de este.

Existe algún método para realizar esta busqueda? o Alguien podria
ayudarme a complementar lo que estoy haciendo.

Hasta pronto y muchas gracias.


Juan Suárez






Estoy utilizando la versión gratuita de SPAMfighter para usuarios
privados.
Ha eliminado 11956 correos spam hasta la fecha.
Los abonados no tienen este mensaje en sus correos.
¡Pruebe SPAMfighter gratis ya!









Estoy utilizando la versión gratuita de SPAMfighter para usuarios
privados.
Ha eliminado 11956 correos spam hasta la fecha.
Los abonados no tienen este mensaje en sus correos.
¡Pruebe SPAMfighter gratis ya!









Estoy utilizando la versión gratuita de SPAMfighter para usuarios privados.
Ha eliminado 11956 correos spam hasta la fecha.
Los abonados no tienen este mensaje en sus correos.
¡Pruebe SPAMfighter gratis ya!
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida