Foros del Web » Programando para Internet » ASPX (.net) »

Control para dibujar una tabla con algunos datos

Estas en el tema de Control para dibujar una tabla con algunos datos en el foro de ASPX (.net) en Foros del Web. Buenas a todos, Quería preguntarles, Quiero dibujar una tabla que va a representar un menu. Su primera fila con el titulo del menu, y luego ...
  #1 (permalink)  
Antiguo 30/03/2006, 11:32
Avatar de moNTeZIon  
Fecha de Ingreso: enero-2005
Ubicación: Lliçà de Munt - BCN
Mensajes: 1.625
Antigüedad: 19 años, 3 meses
Puntos: 9
Control para dibujar una tabla con algunos datos

Buenas a todos,

Quería preguntarles, Quiero dibujar una tabla que va a representar un menu. Su primera fila con el titulo del menu, y luego 4 o 5 filas más para las opciones de menu, que serán hipervinculos dentro de las celdas...

Pues bien, desearía una control al que poder asignarle todo ese código. Normalmente lo hago con un label. O sea, a través de un stringBuilder voy creando la tabla y al final lo igualo a la propiedad text del label:
Código:
sb.Append("<TABLE ...")
sb.Append("</TABLE>")
lblMenu.Text = sb.ToString()
Mi pregunta es si estoy utilizando el control adecuado para hacer estas cosas (al label me refiero). Por razones de rendimiento o cualquier otra cosa que no sepa... Sería mejor hacerlo a través de otro control?

Gracias por sus respuestas.
Saludos
__________________
..:: moNTeZIon ::..
  #2 (permalink)  
Antiguo 30/03/2006, 13:09
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 4 meses
Puntos: 7
Creo que un control de usuario sería mejor.

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #3 (permalink)  
Antiguo 03/04/2006, 11:21
Avatar de moNTeZIon  
Fecha de Ingreso: enero-2005
Ubicación: Lliçà de Munt - BCN
Mensajes: 1.625
Antigüedad: 19 años, 3 meses
Puntos: 9
Y si desde mi página quiero asignarle todo el código, como sería?

lblMenu.Text = sb.ToString() 'Esto para el label, pero para un User control?

.Text?? .InnerText??
Como sería para asignarle al control de usuario todo ese código?

Y si no fuera mucho... Algun motivo por el que tendría una mejor performance utilizar un control de usuario, que un label? Veo más complicado de mover control tipo UserControl que un control tipo label...
Gracias por sus comentarios!
__________________
..:: moNTeZIon ::..
  #4 (permalink)  
Antiguo 03/04/2006, 12:45
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 4 meses
Puntos: 7
Cita:
Iniciado por moNTeZIon
Y si desde mi página quiero asignarle todo el código, como sería?

lblMenu.Text = sb.ToString() 'Esto para el label, pero para un User control?

.Text?? .InnerText??
Como sería para asignarle al control de usuario todo ese código?
No sé el motivo por el que quieres asignar *código desde tu página*, como debes saber en un control de usuario puedes agrupar diferentes elementos que cumplan con una determinada funcionalidad, de ahí que no veo la necesidad de la asignación de código que mencionas.

Cita:
Y si no fuera mucho... Algun motivo por el que tendría una mejor performance utilizar un control de usuario, que un label? Veo más complicado de mover control tipo UserControl que un control tipo label...
Gracias por sus comentarios!
Al usar controles de usuario puedes usar "fragment caching".

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #5 (permalink)  
Antiguo 04/04/2006, 03:56
Avatar de moNTeZIon  
Fecha de Ingreso: enero-2005
Ubicación: Lliçà de Munt - BCN
Mensajes: 1.625
Antigüedad: 19 años, 3 meses
Puntos: 9
Gracias por tus respuestas xknown!
Verás, intento cargar esas opciones de menu desde uns Base de Datos, y como no se cuantas son, pues de ahi que las esté creando dinamicamente. Sino, como bien dices, me crearía un user control, dibujaría la tabla tal cual y palante. Pero al no saber cuantas opciones van a haber en el menu, el bloque <TR>...</TR> lo tengo anidado en un bucle que recorre todos los registros.

Repito que yo lo hago a través de un label, al que le meto el código de la tabla html. También decir que ese label ya está dentro de un User control para ser utilizado en todas mis páginas...
No entiendo la ventaja "fragment caching", por ese nombre no se qué és, ya investigaremos.
Aclarado un poco más, que me recomiendan que haga en este caso? Si sigue siendo la opción de user control... como hago para dibujar el HTML dinamicamente en el user control?? Gracias!
__________________
..:: moNTeZIon ::..
  #6 (permalink)  
Antiguo 04/04/2006, 07:25
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 4 meses
Puntos: 7
Ah, en el caso que mencionas se podría usar un DataList o un Repeater sin necesidad de hacerlo de la forma que dices, dale un vistazo a http://msdn.microsoft.com/library/de...ebcontrols.asp (si no me equivoco está en las FAQ's)

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #7 (permalink)  
Antiguo 04/04/2006, 07:54
 
Fecha de Ingreso: septiembre-2004
Mensajes: 217
Antigüedad: 19 años, 7 meses
Puntos: 0
Tengo unas rutinas que podrian servirte

mandame tu correo a [email protected]

para enviartelo ...
  #8 (permalink)  
Antiguo 04/04/2006, 12:53
Avatar de moNTeZIon  
Fecha de Ingreso: enero-2005
Ubicación: Lliçà de Munt - BCN
Mensajes: 1.625
Antigüedad: 19 años, 3 meses
Puntos: 9
mmm... Eso ya me gusta mucho más.
Creo que debería utilizar estos controles para poder codificar directamente y no hacerlo a mi aire y luego meterlo todo a pelo en un control.
Voy a mirarme el tema más detenidamente.
Gracias xknown!

Zyznya_80, gracias por el ofrecimiento. Ya te mandé un mail. Estoy seguro que tus rutinas van a aclarar en parte mis dudas sobre estos controles.

Un saludo a los dos!
__________________
..:: moNTeZIon ::..
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




La zona horaria es GMT -6. Ahora son las 14:12.