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

dataGrid con registros de 2 líneas

Estas en el tema de dataGrid con registros de 2 líneas en el foro de .NET en Foros del Web. Hola foreros! Con un dataGrid conseguimos listar una serie de registros pero en una sola línea. ¿Es posible mostrar los campos de cada registro en ...
  #1 (permalink)  
Antiguo 20/07/2004, 01:11
Avatar de Phoncadiz  
Fecha de Ingreso: mayo-2004
Ubicación: Cádiz City
Mensajes: 232
Antigüedad: 20 años
Puntos: 1
dataGrid con registros de 2 líneas

Hola foreros!

Con un dataGrid conseguimos listar una serie de registros pero en una sola línea. ¿Es posible mostrar los campos de cada registro en más de una línea? Osea.... En vez de ser así:

ARTICULO - IMPORTE
--------------------
ARTICULO - IMPORTE
--------------------
ARTICULO - IMPORTE
--------------------
[...]

Que sea así:

ARTICULO
IMPORTE
----------
ARTICULO
IMPORTE
----------
ARTICULO
IMPORTE
----------

Me imagino que se tendrá que usar un dataList...

Saludos!!!
__________________
Tantas horas delante de una pantalla servirá para algo....
[Phoncadiz; mínimo 8 h. al día con el PC] :stress:
  #2 (permalink)  
Antiguo 20/07/2004, 16:35
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Hola PhonC;

Yo estoy tratando de hacer lo mismo, pero no hay manera. Si lo consigo, ya te diré.

Un saludo.
__________________
Pide lo que quieras...y luego paga por ello
  #3 (permalink)  
Antiguo 20/07/2004, 16:50
 
Fecha de Ingreso: abril-2003
Mensajes: 606
Antigüedad: 21 años
Puntos: 2
Utiliza un TemplateColumn
  #4 (permalink)  
Antiguo 20/07/2004, 17:23
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Joder, con perdón...

Cuando he leído la respuesta, he pensado, "vaya, me he quedado igual que estaba; ya utilizo TemplateColumn, y no me salen 2 filas dentro de un mismo registro"...

...hasta que me he dado cuenta de que dentro de ItemTemplate podía poner más de un control, y me aparecían dentro de la presentación del mismo registro.

PhonC, a esto es lo que me refiero:

<Columns> <asp:TemplateColumn ItemStyle-HorizontalAlign="Center">
<HeaderTemplate>
Fotografía
</HeaderTemplate>
<ItemTemplate>
<asp:Image ImageUrl='<%# DataBinder.Eval(Container.DataItem, "Imagen1") %>' Height="50px" Width="50px" runat=server ID="Image1"/>
<asp:Image ImageUrl='<%# DataBinder.Eval(Container.DataItem, "Imagen1") %>' Height="50px" Width="50px" runat=server ID="Image2"/>
</ItemTemplate>
</asp:TemplateColumn>
...

Si no ha quedado muy claro, me preguntas.

Muchas gracias, DoNetD, por orientarnos correctamente.

Un saludo a ambos.
__________________
Pide lo que quieras...y luego paga por ello
  #5 (permalink)  
Antiguo 20/07/2004, 17:33
 
Fecha de Ingreso: abril-2003
Mensajes: 606
Antigüedad: 21 años
Puntos: 2
Fue sarcasmo?

Por q no entendi. Si si lo fue, favor de aclarar.

Gracias
  #6 (permalink)  
Antiguo 20/07/2004, 17:48
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
No, no. Todo lo contrario, DotNetD.

Te doy las gracias sinceramente. Estaba ciego, y al decirme tú que, efectivamente, se podía hacer con TemplateColumns, ya sólo tenía que averiguar cómo...y salió enseguida.

A lo que me refería es que soy un poco torpe y, normalmente, sin ejemplos no me aclaro mucho. Pero en este caso sólo con lo que dijiste, me ha servido.

Un saludo.
__________________
Pide lo que quieras...y luego paga por ello
  #7 (permalink)  
Antiguo 20/07/2004, 18:21
 
Fecha de Ingreso: abril-2003
Mensajes: 606
Antigüedad: 21 años
Puntos: 2
Ah ya, es cierto =P. Ahora q lei bien me doy cuenta. Je, consecuencias de mas de 14 hs frente al monitor
  #8 (permalink)  
Antiguo 20/07/2004, 18:35
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Buffff, demasiadas horas. Descansa un poco!
__________________
Pide lo que quieras...y luego paga por ello
  #9 (permalink)  
Antiguo 21/07/2004, 00:51
Avatar de Phoncadiz  
Fecha de Ingreso: mayo-2004
Ubicación: Cádiz City
Mensajes: 232
Antigüedad: 20 años
Puntos: 1
Vaya, vaya, vaya...

La verdad es que me sorprendeis gratamente cada vez más. Aunque me he quedado un poco así... ya que de la zona de HTML poco toco.
Haciendo pruebas con el código de luiscl me he dado cuenta que en el modo diseño y en las propiedades del datagrid se crea otra columna del tipo plantilla. Lo que no se es cómo controlarla desde ahí (desde el modo diseño). Parece ser que la mejor forma es desde el código HTML.... Pero bueno, estoy derivando. Lo suyo es hacer pruebas y cuando tenga algo concluyente lo comento.

Sin más, daros de nuevo las gracias a los dos: luiscl y DotNetDeveloper.

Saludos!!!
PD: ¿Dónde te has metido SunDark?
__________________
Tantas horas delante de una pantalla servirá para algo....
[Phoncadiz; mínimo 8 h. al día con el PC] :stress:
  #10 (permalink)  
Antiguo 21/07/2004, 02:17
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Dime exáctamente qué quieres hacer, e intento decirte, porque estoy de pruebas ahora con las templatecolumns.
__________________
Pide lo que quieras...y luego paga por ello
  #11 (permalink)  
Antiguo 21/07/2004, 02:47
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
Jejejej SunDarK ha vuelto otra vez a currar con su padre,asi que ahora las tardes las tengo ocupada,y la mitad de las mañana tambien.La otra mitad la intento aprovechar lejos del PC :$,pero vamos que ando por aqui ehhh,mas lento de reflejos pero ando ^^
  #12 (permalink)  
Antiguo 21/07/2004, 03:37
Avatar de Phoncadiz  
Fecha de Ingreso: mayo-2004
Ubicación: Cádiz City
Mensajes: 232
Antigüedad: 20 años
Puntos: 1
Bueno Sundark... si es eso te lo perdono. Saludos!!!

Veamos luiscl, mi intención no era otra que la del ejemplo que puse al principio del tema. Ya me has dado alguna que otra pista para investigar, pero mi problema es que bajo la parte de HTML no me manejo muy bien ya que trabajo mayormente bajo codebehind. Entonces, aunque me de verguenza admitirlo, nunca he utilizado eso de:

Código:
<%# DataBinder.Eval(Container.DataItem, "Imagen1") %>


Por lo tanto, mi problema actual es saber cómo utilizo el DATABINDER
¿Qué tendría que hacer para agregar por ejemplo una operación que tengo en un label? (por poner un ejemplo).

De nuevo, 1000 gracias luiscl.
__________________
Tantas horas delante de una pantalla servirá para algo....
[Phoncadiz; mínimo 8 h. al día con el PC] :stress:
  #13 (permalink)  
Antiguo 21/07/2004, 09:05
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Jejeje...tú y yo, iguales. Aprendiendo sobre la marcha.

A ver si con esto te ayudo. Este es mi datagrid. En la misma fila muestro 2 fotos y 2 label enlazados con la bd

<asp:datagrid id="datagridcasasC" runat="Server" <Columns>
<asp:TemplateColumn ItemStyle-HorizontalAlign="Center" ItemStyle-Width="200px">

<HeaderTemplate>
Fotografía
</HeaderTemplate>

<ItemTemplate>

<asp:Image ImageUrl='<%# DataBinder.Eval(Container.DataItem, "Imagen1") %>' Height="50px" Width="50px" runat=server tooltip = "fotografía 2" ID="Image1"/>

<asp:Image ImageUrl='<%# DataBinder.Eval(Container.DataItem, "Imagen1") %>' ToolTip='<%#DataBinder.Eval(Container.DataItem, "PrecioAltaCompleta")%>' Height="50px" Width="50px" runat=server ID="Image2"/>

'NombreLegal es un campo de la base de datos, igual que Imagen1, RazonComercial, etc

<asp:Label text = '<%# DataBinder.Eval(Container.DataItem, "NombreLegal") %>' Runat=server Id=lblpanel1/>

<asp:Label text = '<%# DataBinder.Eval(Container.DataItem, "RazonComercial") %>' Runat=server ID=lblpanel2/>

</ItemTemplate>
</asp:TemplateColumn>

' a partir de aquí ya son el resto de las columnas "normales"

...
</Columns>

</asp:datagrid>

Ahora viene la parte de dudas. Yo me explico como un tronco quemado, así que no te cortes en preguntar

Un saludo.
__________________
Pide lo que quieras...y luego paga por ello
  #14 (permalink)  
Antiguo 21/07/2004, 09:07
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Ah, del Databinder...no te preocupes mucho. Sólo de lo que va entre comillas, que es el nombre del campo de la bd. El resto son indicaciones de que ese control enlaza con un campo de la bd, y que está dentro de un datagrid (más o menos)
__________________
Pide lo que quieras...y luego paga por ello
  #15 (permalink)  
Antiguo 28/10/2004, 17:04
 
Fecha de Ingreso: octubre-2004
Mensajes: 27
Antigüedad: 19 años, 6 meses
Puntos: 0
De la pm, que bueno este truquito !!!! thanks ....
  #16 (permalink)  
Antiguo 30/04/2005, 05:47
 
Fecha de Ingreso: diciembre-2001
Mensajes: 262
Antigüedad: 22 años, 4 meses
Puntos: 0
Hola,
Aunque este hilo va un poco antiguo, para mi sigue siendo de lo mas actual

mi pregunta es...

Y si guiero mostrar como indicais pero en dos columnas ?

articulo | articulo
precio | precio
-- -- -- -- -- --
articulo | articulo
precio | precio


He probado asi pero no cuela, me hace dos columnas identicas.

<Columns>
<asp:TemplateColumn HeaderText="Artículos">
<ItemTemplate>
<asp:image id="image1" runat="server" ImageUrl='<%# Imagenes ..etc
<br>
<asp:Hyperlink id="enlace" runat="server" NavigateUrl='<%.... etck>
<br>
<asp:Label id="lbprecio" runat="server" forecolor="#000099" f... etc
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="Artículos">
<ItemTemplate>
<asp:image id="image1" runat="server" ImageUrl='<%# Imagenes ..etc
<br>
<asp:Hyperlink id="enlace" runat="server" NavigateUrl='<%.... etck>
<br>
<asp:Label id="lbprecio" runat="server" forecolor="#000099" f... etc
</ItemTemplate>
</asp:TemplateColumn>
</Columns>


En realidad, creo que he probado de 101 maneras

Alguna sugerencia.

Esto cada día se pone más interesante
  #17 (permalink)  
Antiguo 10/05/2005, 00:31
 
Fecha de Ingreso: mayo-2005
Mensajes: 1
Antigüedad: 19 años
Puntos: 0
Pues almaluz eso es lo mismo k me pasa a mi ... llevo un par de semanas intentando mostrar los datos de un datagrid pero en 2 columnas y nada.... claro eso lo hace el datalist con el RepeatColumns="2" ... pero necesito especificamente un DATAGRID porfaaaaaaa alguien k nos ayude
  #18 (permalink)  
Antiguo 10/05/2005, 08:32
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Suena a como hacer 2 datagrid's Maestro-Detalle, si a alguien le interesa con muxo gusto les explico...

Por ciertom sunDark, donde has estao, no te pierdas!!!

Salu2 a to2
  #19 (permalink)  
Antiguo 10/05/2005, 08:36
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Cita:
Iniciado por almaluz
Hola,
Aunque este hilo va un poco antiguo, para mi sigue siendo de lo mas actual

mi pregunta es...

Y si guiero mostrar como indicais pero en dos columnas ?

articulo | articulo
precio | precio
-- -- -- -- -- --
articulo | articulo
precio | precio


He probado asi pero no cuela, me hace dos columnas identicas.

<Columns>
<asp:TemplateColumn HeaderText="Artículos">
<ItemTemplate>
<asp:image id="image1" runat="server" ImageUrl='<%# Imagenes ..etc
<br>
<asp:Hyperlink id="enlace" runat="server" NavigateUrl='<%.... etck>
<br>
<asp:Label id="lbprecio" runat="server" forecolor="#000099" f... etc
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="Artículos">
<ItemTemplate>
<asp:image id="image1" runat="server" ImageUrl='<%# Imagenes ..etc
<br>
<asp:Hyperlink id="enlace" runat="server" NavigateUrl='<%.... etck>
<br>
<asp:Label id="lbprecio" runat="server" forecolor="#000099" f... etc
</ItemTemplate>
</asp:TemplateColumn>
</Columns>


En realidad, creo que he probado de 101 maneras

Alguna sugerencia.

Esto cada día se pone más interesante
Yo usaría un dataList, Salu2
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 20:58.