C sharp - Seleccionar el valor de un combobox

 
Vista:

Seleccionar el valor de un combobox

Publicado por Mario Fernando (5 intervenciones) el 26/11/2009 14:01:02
Hola a todos,
Tengo un problema, estoy cargando un combobox con información de una base de datos (una entidad de EF).. asigno el DataSource = tabla, el ValueMembre = Id y el DisplayMember = CampoX ...hasta ahi bien, el problema es cuando quiero recuperar el valor del "Id" del combobox del item seleccionado, pues cuando selecciono el ComboBox.Text me trae el texto,... el ComboBox.SeletedItem no es un valor... el SelectedIndex .. es el indice del combo y el ComboBox.SelectedValue me trae una cadena donde esta el encabezado y el valor ... "{Id=1; CampoX=Pepe}".... pero no se como recuperar el valor del Id ùnicamente osea el 1.. que es el que necesito.
Si me pueden ayudar ... muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de roger

RE:Seleccionar el valor de un combobox

Publicado por roger (160 intervenciones) el 26/11/2009 15:13:42
el campo id de esa entidad a la que enlazas los datos del combo es de que tipo???
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Seleccionar el valor de un combobox

Publicado por Mario Fernando (5 intervenciones) el 26/11/2009 16:05:14
El Id (ValueMembre) es tipo int .... y Tipo (DisplayMember) String .... yo asigno a una variable string el resultado del ComboBox.SelectedValue... y me trae {Id = 1, Tipo = "Tipo XX "} ... si la asigno a una variable int .. me produce una excepciòn ..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Seleccionar el valor de un combobox

Publicado por Mario Fernando (5 intervenciones) el 26/11/2009 16:20:07
hice una prueba... si le asigno el Text1.Text=ComboBox.SelectedValue.ToString(); el Text1 me muestra el valor 1 ,en este caso, .... pero si lo vuelvo a asignar a una variable int.. me vuelve a sacar una Excepción Int Prueba; Prueba=Convert.ToInt32(Text1.Text.ToString()); pq Text1.Text .. vueve a tener toda la cadena "{Id = 1, Tipo = Tipo XX }" ... sugerencias???
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de roger

RE:Seleccionar el valor de un combobox

Publicado por roger (160 intervenciones) el 26/11/2009 19:57:51
por eso pregunté lo del tipo de dato, como el selectedValue trae un tipo de dato object, suponia que la propiedad del valueMember era un objeto complejo y no un tipo de dato simple, como string o int, entonces me parece muy raro que estando enlazado a un tipo simple, te muestre dos datos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Seleccionar el valor de un combobox

Publicado por Mario Fernando (5 intervenciones) el 26/11/2009 20:22:22
Ya encontré el problema... es que estaba scando el SelectedValue.. en el evento SelectedIndexChaged.... no se pq pero traía toda la coleccion, pero cuando llamo el SelectedValue en otra parte, efectivamente ahi si sólo me trae el valor que quiero opcion = (int)Combo1.SelectedValue;
Espero a alguien le sirva... y si alguien sabe como solucionarlo dentro del Combo1_SelectedIndexChanged bienvenido sea.... Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar