• Jueves 14 de Noviembre de 2024, 19:05

Autor Tema:  Como Se Da Aspecto De Tabla A Un Repeater?  (Leído 1927 veces)

Moy

  • Miembro activo
  • **
  • Mensajes: 45
    • Ver Perfil
Como Se Da Aspecto De Tabla A Un Repeater?
« en: Lunes 9 de Mayo de 2005, 10:41 »
0
Estoy bastante liado con un repeater que hace lo que le viene en gana y no hay forma de que se comporte como le mando.
Lo tengo metido dentro de un Div con opcion de scroll y le he puesto un alternateitem para que vaya cambiando de color.
Mas o menos es así:
Código: Text
  1.  
  2. <div align=left STYLE="overflow:scroll; height:169; width:380;>
  3. <asp:Repeater id="Repeater1" runat="server">
  4.   <ItemTemplate>
  5.   <table><tr bgcolor="#6495ED">
  6.   <td><asp:ImageButton
  7.       runat="server"
  8.       ImageUrl='<%# DataBinder.Eval(Container.DataItem, "URL") %>'
  9.       OnClick="ImageButton_Click"
  10.       Height=80
  11.       Width=80>
  12.       </asp:imagebutton></td>
  13.          <td><div align=center>
  14.          <b><%# DataBinder.Eval(Container.DataItem, "Titulo") %></b> <br>
  15.          <%# DataBinder.Eval(Container.DataItem, "Descripcion") %>
  16.    </div></td>
  17.    </tr></table>
  18.    </ItemTemplate>
  19.  
  20.          <SeparatorTemplate>
  21.          
  22.    </SeparatorTemplate>
  23.  
  24.   <AlternatingItemTemplate>
  25.   <table><tr bgcolor="#ADD8E6">
  26.   <td><asp:ImageButton
  27.             runat="server"
  28.          ImageUrl='<%# DataBinder.Eval(Container.DataItem, "URL") %>'
  29.          OnClick="ImageButton_Click"
  30.          Height=80
  31.          Width=80>
  32.          </asp:imagebutton></td>
  33.      <td><div align=center>
  34.             <b><%# DataBinder.Eval(Container.DataItem, "Titulo") %></b> <br>
  35.     <%# DataBinder.Eval(Container.DataItem, "Descripcion") %>
  36.    </div></td>
  37.     </tr></table>  
  38.     </AlternatingItemTemplate>
  39.         </asp:Repeater>
  40.    </div>
  41.  
  42.  

A simple vista devería mostar una especie de tabla con una imagen a un lado y una pequeña descripcion al otro; pero al probarlo el primer elemento sale como le da la gana, sin el color de fondo que le he puesto y con un salto de carro entre la imagen y su texto, cuando el resto de lineas se ven perfectas, con su color adecuado y la imagen y el texto en la misma linea.

¿A qué puede ser debido?

En todos los ejemplos que veo sobre Repeaters veo que en vez de poner una tabla para cada Itemtemplate, abren una en la cabecera y la cierran en el pie del repeater, pero cuando intento hacerlo yo me dice que ni hablar, que en un elemento de servidor hay que cerrar el Table antes de cerrar el HeaderTemplate.

¿Será que me tiene manía?
Yo veo que a todo el mundo le funciona el truco y los de ellos tambien son Repeaters con la opcion Runat="Server"

Moy

  • Miembro activo
  • **
  • Mensajes: 45
    • Ver Perfil
Re: Como Se Da Aspecto De Tabla A Un Repeater?
« Respuesta #1 en: Lunes 9 de Mayo de 2005, 13:25 »
0
A ver, he avanzado un poco, aun que no sé como, porque el codigo sigue siendo el mismo, solo que ahora falla otra cosa.
Ahora lo que no funciona es el Scroll del Div.

El Div es algo asi:
Código: Text
  1.  
  2. <div STYLE="overflow:scroll; height:169; width:380;>
  3. Codigo del Repeater
  4. </div>
  5.  
  6.  
¿No se supone que debería recortar lo que hay dentro y poner una barra de Scroll?

Se supone que debería funcionar, asi que no sé si podreis ayudarme; pero como cuando os pregunté antes por lo del formato se arregló solo por arte de magia, voy a ver si vuelvo a tener suerte.  :P

Moy

  • Miembro activo
  • **
  • Mensajes: 45
    • Ver Perfil
Re: Como Se Da Aspecto De Tabla A Un Repeater?
« Respuesta #2 en: Martes 10 de Mayo de 2005, 11:31 »
0
Ni os molesteis...
¿Sabeis qué fallaba?
Una simple comilla doble en el Div...

Es pa' matarme...

Bueno, para el que le interese hacer un Repeater con casillas como si fuera una tabla y que además venga con Scrollbar si se sale de un tamaño determinado, esto sería lo básico:

Código: Text
  1.  
  2. <div STYLE="overflow:auto; height:169; width:380;">
  3. <asp:Repeater id="Repeater1" runat="server">
  4.  <ItemTemplate>
  5.  <table><tr bgcolor="#6495ED">
  6.  <td><asp:ImageButton
  7.      runat="server"
  8.      ImageUrl='<%# DataBinder.Eval(Container.DataItem, "URL") %>'
  9.      OnClick="ImageButton_Click"
  10.      Height=80
  11.      Width=80>
  12.      </asp:imagebutton></td>
  13.         <td><div align=center>
  14.         <b><%# DataBinder.Eval(Container.DataItem, "Titulo") %></b> <br>
  15.         <%# DataBinder.Eval(Container.DataItem, "Descripcion") %>
  16.   </div></td>
  17.   </tr></table>
  18.   </ItemTemplate>
  19. </asp:Repeater>
  20. </div>
  21.  
  22.  

Tendriais como resultado una serie de lineas con un imagebutton y un poco de texto al lado cada una. El resto es retorcarlo segun el gusto de cada uno.

No, si al final voy a convertirme en un experto en datarepeaters... -_-