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

Problema con gridview y columnas agregada automaticamente

Estas en el tema de Problema con gridview y columnas agregada automaticamente en el foro de ASPX (.net) en Foros del Web. buenos dias a todos estoy haciendo por codigo una columna template. Esta columna template tiene dentro un objeto tipo hyperlink, al cual debo agregarle una ...
  #1 (permalink)  
Antiguo 25/07/2012, 08:23
 
Fecha de Ingreso: enero-2009
Mensajes: 201
Antigüedad: 15 años, 9 meses
Puntos: 1
Problema con gridview y columnas agregada automaticamente

buenos dias a todos

estoy haciendo por codigo una columna template. Esta columna template tiene dentro un objeto tipo hyperlink, al cual debo agregarle una imagen una url de navegacion, datos que trae de la base de datos.

Estos datos deben ser agregados automaticamente al hacerle un databind a la grilla. Pero no se como asignarle al objeto template que tenga asociados los campos en cuestion,

¿como puedo hacer esto?

El codigo que tengo es el siguiente:

Código ASP:
Ver original
  1. Dim txtColumn As New TemplateField
  2.  
  3.                     If .Item("camp_ancho") <> 0 Then
  4.                         txtColumn.ItemStyle.Width = Integer.Parse(.Item("camp_ancho"))
  5.                     End If
  6.  
  7.                     If (IsDBNull(.Item("camp_align"))) Then
  8.                         txtColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Left
  9.                     Else
  10.                         Select Case .Item("camp_align")
  11.                             Case Is = 0
  12.                                 txtColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Left
  13.                             Case Is = 1
  14.                                 txtColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Center
  15.                             Case Is = 2
  16.                                 txtColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Right
  17.                         End Select
  18.                     End If
  19.  
  20.  
  21.                     txtColumn.ItemTemplate = New colImageButton(.Item("alias"))
  22.                     gvListado.Columns.Add(txtColumn)
  23.  
  24. ...
  25.  
  26.  
  27. Class colImageButton
  28.     Implements ITemplate
  29.  
  30.     Dim hl As New HyperLink
  31.     Public Sub New(ByVal url As String)
  32.         hl.NavigateUrl = url
  33.     End Sub
  34.     Public Sub InstantiateIn(ByVal container As System.Web.UI.Control) Implements System.Web.UI.ITemplate.InstantiateIn
  35.         hl.ID = "MyTextBox"
  36.         container.Controls.Add(hl)
  37.     End Sub
  38. End Class
__________________
Francisco Birrer
Arquitecto de Software e-process
http://www.universite.cl
  #2 (permalink)  
Antiguo 25/07/2012, 16:34
Avatar de AWesker  
Fecha de Ingreso: octubre-2008
Mensajes: 177
Antigüedad: 16 años
Puntos: 27
Respuesta: Problema con gridview y columnas agregada automaticamente

¿Cómo están las cosas franciscomusico?

Creo que no capto muy bien el proceso que debes realizar, corregime si me equivoco:
  • Todo inicia en un GridView enlazado a datos que entre las celdas tiene un HyperLink (al que debes agregarle una imagen), ¿después te redirecciona a otra página?
  • Después a partir del registro seleccionado debes cargar los datos a TextBox, Labels, Images o al control que corresponda.
  • Además, ¿utilizas DataSource?

Creo que si nos das un poco más de información podemos darte una mano, por favor trata de ser un poco más descriptivo.

Saludos...
  #3 (permalink)  
Antiguo 25/07/2012, 17:10
 
Fecha de Ingreso: enero-2009
Mensajes: 201
Antigüedad: 15 años, 9 meses
Puntos: 1
Respuesta: Problema con gridview y columnas agregada automaticamente

hola

lamento que no se mne haya entendido.

Tengo un sistema de creacion de informes. Donde pongo las tablas, las columnas que se van a mostrar y como se van a mostrar.

Se pueden mostrar celdas como texto normal, links e imagenes pero me pidieron que las imagenes se pudiera hacer click y fuera redireccionado a una pagina.

Es alli que tengo un codigo que crea un objeto templatefield, y que dentro de este objeto creo un hyperlink con imagen.

El problema que tengo es que cuando muestro la grilla la imagen me la muestra solo en el ultimo registro de la grilla.

adjunto imagen


https://www.dropbox.com/s/2bc5i2o0aelzylv/error.png

¿Se entiende?
__________________
Francisco Birrer
Arquitecto de Software e-process
http://www.universite.cl
  #4 (permalink)  
Antiguo 26/07/2012, 08:26
Avatar de AWesker  
Fecha de Ingreso: octubre-2008
Mensajes: 177
Antigüedad: 16 años
Puntos: 27
Respuesta: Problema con gridview y columnas agregada automaticamente

Creo que lo tengo más claro. Creo que el problema es en el evento en el que agregas los elementos. Suponiendo que usas un Datasource y que tenes el GridView con la estructura, te recomendaria que agregués un TemplateField, dentro de este un ItemTemplate y dentro de este último el elemento Image y el Hyperlink, por supuesto que el ImageUrl va ser la clave.

Si necesitas algo de código para que se te haga más claro me avisas y lo pongo.
  #5 (permalink)  
Antiguo 26/07/2012, 16:25
Avatar de cgonzalezm  
Fecha de Ingreso: junio-2012
Mensajes: 55
Antigüedad: 12 años, 5 meses
Puntos: 13
Respuesta: Problema con gridview y columnas agregada automaticamente

Eso que quieres hacer se hace por medio de un evento de la grilla:

- RowDataBound

Dentro de ese evento puedes manejar la grilla como quieras en tiempo de ejecución.

Etiquetas: automaticamente, columnas, gridview, textbox
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 12:17.