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

ListBox en ASP . NET

Estas en el tema de ListBox en ASP . NET en el foro de .NET en Foros del Web. Hola chicos/as: Pregunta: ¿En un ListBox se pueden tener 2 columnas y que una de ellas sea invisible?. Gracias....
  #1 (permalink)  
Antiguo 25/06/2004, 09:40
 
Fecha de Ingreso: junio-2004
Ubicación: Madrid
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
ListBox en ASP . NET

Hola chicos/as:
Pregunta:
¿En un ListBox se pueden tener 2 columnas y que una de ellas sea invisible?.

Gracias.
  #2 (permalink)  
Antiguo 25/06/2004, 09:46
 
Fecha de Ingreso: junio-2004
Mensajes: 92
Antigüedad: 19 años, 10 meses
Puntos: 0
No puedes tener dos columnas en un mismo listbox
Pero puedes usar otro listbox, supongo. Que quieres lograr, exactamente?
  #3 (permalink)  
Antiguo 25/06/2004, 09:54
 
Fecha de Ingreso: junio-2004
Ubicación: Madrid
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
Gracias:
Es para un sistema de ayudas. Ahora mismo tengo 2 ListBox (como tú dices), en uno tengo el código del registro y en en el otro ListBox tengo la descripción del registro. Lo que muestro al usuario es la descripción, pero lo que a mi me vale para insertar en otra tabla es el código. Había pensado mostrar los 2 campos, pero tengo otro problema. El formato: no acepta espacios en blanco. La ayuda me quedaría así:
CODIGO DESCRIPCION
0000001 Artículo número 1
002 Artículo número 2
00000000000003 Artículo número 3

Entiendes, como la long. del campo CODIGO es variable me descuadra todo.
Yo vengo de VB y alli si se podian ocultar columnas en un ListBox.
Gracias, Cesar.
  #4 (permalink)  
Antiguo 25/06/2004, 10:21
 
Fecha de Ingreso: junio-2004
Mensajes: 92
Antigüedad: 19 años, 10 meses
Puntos: 0
Confundi lo de columnas de BD con columnas visuales, ahora entiendo que te referias a lo primero, disculpa.

Un listbox tiene una lista de items accesible por listbox.items, correcto?
Bien, cada item tiene una propiedad "value" (valor) y otra "text" (texto). Para eso seria entonces cuestion de que asignes en la propiedad "value" el codigo, y en "text" el texto.

Si estas trayendo los datos usando .datasource y luego .databind, puedes hacerlo especificando la propiedad .DataTextField y .DataValueField
Esto ultimo en el listbox para asp.net, si es para windows realmente no se cual seria la propiedad, pero podrias revisar la ayuda.

Espero te sirva!
__________________
Crea tu Sitio
  #5 (permalink)  
Antiguo 25/06/2004, 10:49
 
Fecha de Ingreso: junio-2004
Ubicación: Madrid
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
El ListBox no lo tengo enlazado.
Mediante un DataReader cargo todos los registros de la tabla en los ListBox.

Algo asi:

While DataReader.Read()
ListBox1.Items.Add(DataReader("CODIGO")
ListBox2.Items.Add(DataReader("DESCRIPCION")
End while

¿Como le asigno un valor para Text y otro para Value?
  #6 (permalink)  
Antiguo 25/06/2004, 12:44
Avatar de SunDarK  
Fecha de Ingreso: diciembre-2003
Ubicación: Jerez de la Frontera
Mensajes: 1.193
Antigüedad: 20 años, 4 meses
Puntos: 8
ListBox1.Items(i).Text= "eltextokekieras"
ListBox1.Items(i).Value= "elvalorkekieras"

Siendo el el Índice que indica la posición del elemento en el DropDownList(recuerda que el primer item tiene el indice 0
Un saludo
  #7 (permalink)  
Antiguo 29/06/2004, 01:20
 
Fecha de Ingreso: junio-2004
Ubicación: Madrid
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
Ok, Gracias. Esto me sirve.
Cuando en los listbox tenia que cargar muchos registros se hacia todo muy lento, ya que tenia que cargar 2 listbox ... asi lo tengo todo en uno y tarda bastante menos.
Gracias.
  #8 (permalink)  
Antiguo 29/06/2004, 02:06
Avatar de SunDarK  
Fecha de Ingreso: diciembre-2003
Ubicación: Jerez de la Frontera
Mensajes: 1.193
Antigüedad: 20 años, 4 meses
Puntos: 8
Me alegra que te sirviera
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 13:31.