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

Implementar Seleccion en Repeater

Estas en el tema de Implementar Seleccion en Repeater en el foro de .NET en Foros del Web. Hola :) Necesito añadir a una tabla, <thead> <th> y <tbody>, como elementos adicionales de maquetación. Si no me equivoco, solo los puedo implementar con ...
  #1 (permalink)  
Antiguo 13/11/2005, 17:57
 
Fecha de Ingreso: septiembre-2004
Mensajes: 17
Antigüedad: 19 años, 7 meses
Puntos: 0
Implementar Seleccion en Repeater

Hola :)

Necesito añadir a una tabla, <thead> <th> y <tbody>, como elementos adicionales de maquetación. Si no me equivoco, solo los puedo implementar con un Repeater, ya que tanto con un dataList como con dataGrid no veo la manera de hacerlo (bueno existe UseAccessibleHeader, pero solo para TH).

El problema está en que Repeater no lleva implementado funciones de selección, y requiero de esa funcionalidad. ¿Alguien se ha encontrado con esto?

Quizás pueda implementar los onClick del los <tr> desde el cliente y enviar un submit() e intentar recoger el row de la colección del datarepeater a través de _itemCommand o no se si podre controlar eventos onClick directamente desde el server, algo tipo <tr runat="server">.

Alguna sugerencia ... Gracias
  #2 (permalink)  
Antiguo 14/11/2005, 02:09
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 5 meses
Puntos: 8
Puedes "mezclar" javascript con codigo del servidor de la siguiente forma:

<tr onclick="__doPostBack('fila','numfila')">
</tr>

y en el server:

sub page_load
if ispostback
if request.form("__eventtarget") = "fila"
dim numfila = request.form("__eventargument")
....

es solo una idea. Espero que te sirva
  #3 (permalink)  
Antiguo 14/11/2005, 03:58
 
Fecha de Ingreso: septiembre-2004
Mensajes: 17
Antigüedad: 19 años, 7 meses
Puntos: 0
Si, es buena idea. Yo lo estaba planteando desde _itemCommand, pero claro eso requiere de un boton, y estaba intentando esquivar la premisa, pero no hay tu tia. Y una cosa que estoy observando es que con el onClick sobre el <tr> el comportamiento del onClick no es exacto aveces me salta el evento a veces no. ummmhhh....

He visto por ahí personalizaciones del control datagrid para que renderice estos tags, pero no es tan simple, pq en realidad esos tags implementan agrupamiento y afecta también a las colecciones de items, por lo que no solo se trata de controlar la salida html sino también el manejo de las colecciones.

Y algo tipo ... <tr runat="server"> ... podria controlar el clickEvent desde el server directamente ...?
  #4 (permalink)  
Antiguo 14/11/2005, 04:05
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 5 meses
Puntos: 8
Pues eso la verdad no lo se, pero supongo que si le pones un id y lo declaras como protected withevents te debería funcionar.
Pero lo del onclick que a veces no te funcione me parece muy extraño, ¿Como cargas tu repeater en ejecucion con ItemDataBound o en diseño con <%# ...??
  #5 (permalink)  
Antiguo 14/11/2005, 04:50
 
Fecha de Ingreso: septiembre-2004
Mensajes: 17
Antigüedad: 19 años, 7 meses
Puntos: 0
... justo ahora iba a corregir en el post al respecto del evento ("ahora si ahora no") :) ... Simplemente era que a las tantas de la madrugada las neuronas ya están fritas ... se trataba de no habia implementado el onclick en las alternatingItem y cuando clickaba sobre ellas no ejecutaba el evento, je je je ... está implementado pero no formateado graficamente y a según que horas ya no te das cuenta de naaaaaahhh :)
  #6 (permalink)  
Antiguo 14/11/2005, 05:00
 
Fecha de Ingreso: septiembre-2004
Mensajes: 17
Antigüedad: 19 años, 7 meses
Puntos: 0
Cita:
Iniciado por Jose_minglein2
Pues eso la verdad no lo se, pero supongo que si le pones un id y lo declaras como protected withevents te debería funcionar.
Si ... pero tengo mis dudas con respecto a la serialización del id pq hace referencia al <tr>, que en realidad serán varias filas generadas y no a un elemento en concreto ...
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 13:30.