CLR: .Net / Mono / Boo / Otros CLR > C#
IDs en un ComboBox
(1/1)
darhas:
Hola a todos tengo una duda tonta
Antes de nada NO ES ASP.NET, es un Windows FORM, lo digo para que no haya confusion.
Saco unos datos de una Base de Datos para meterlos en un ComboBox.
Esos datos son TEXTO mas el ID de la base de datos.
Muestro en el ComboBox el TEXTO, pero mi duda es, como pongo en el ComboBox
el ID correspondiente al TEXTO, para recoger el ID de la seleccion.
Idem para un ListBox
En ASP si que se hacerlo, pongo el ejemplo del ASP para que me entendais
mejor.
<Select Name="Categoria" Onchange = "javascript:Envio();">
<option></option>
<option value="<%=RS("ID")%>"> <%=RS("TEXTOQUESEENTIENDE")%></option>
</Select>
Un saludo y gracias por todo
Darhas
Jeysscarr:
Hola cómo estás, acabé de crear una pequeña página de ejemplos de C# y Windows Forms y hace unos dias cree un video explicando como hacer EXACTAMENTE ESO QUE DIJISTE, la página es la siguiente: http://www.facebook.com/home.php?#!/vid ... 094&ref=mf
Básicamente creo una clase que dispone de ID y TEXTO
y cambio el metodo ToSTring de la clase base para que devuelva el texto
asi cuando agrego valores al combo, lo unico que debo hacer es algo como esto:
Combobox1.Items.Add(New MICLASE(0,"Texto del id 0"));
Para recuperar el id solo creo un Método Static en la clase que reciba como parametro un OBJECT y devuelva el texto del mismo, asi al ser static no tengo que crear una nueva instancia de la clase, sino que uso el método directamente:
---desde la clase seria algo como:
--- Código: C# ---Public Static ObtenerTextoPorID(Object ItemComboSeleccionado){ if(ItemComboSeleccionado!=null) { //Convierto el objeto seleccionado y devuelvo el combo return Int.Parse( ( (MICLASE)ItemComboSeleccionado ).ToString() ); } else return 0;} -- desde el Formulario seria:
--- Código: C# ---int ID=MICLASE.ObtenerTextoPorID (ComboBox1.SelectedItem);
Que pena la respuesta tán tarde pero de algo servirá :beer:
Navegación
Ir a la versión completa