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

Gridview: Agregar imagen en una celda...

Estas en el tema de Gridview: Agregar imagen en una celda... en el foro de ASPX (.net) en Foros del Web. holas... nuevamente... necesito ayuda con lo siguiente: tengo un grid hecho en tiempo de diseño con sus respectivas columnas... la primera columna (0) tiene el ...
  #1 (permalink)  
Antiguo 31/07/2008, 21:26
Avatar de el mago de oz  
Fecha de Ingreso: octubre-2005
Mensajes: 192
Antigüedad: 18 años, 6 meses
Puntos: 0
Pregunta Gridview: Agregar imagen en una celda...

holas... nuevamente...

necesito ayuda con lo siguiente:

tengo un grid hecho en tiempo de diseño con sus respectivas columnas...
la primera columna (0) tiene el ID de la fila de la base de datos... el segundo(1) una fecha de vencimiento cualquiera...

lo que necesito hacer es ver si la fecha de vencimiento (que esta expresada en dias y horas) es es mayor o no a la fecha actual... si, por ejemplo, quedan dos dias por vencer quiero mostrar en la misma celda del ID un semaforo (imagen) con luz verde, si queda un dia para vencer entonces semaforo con luz amarilla y si queda menos de un dia semaforo con luz roja...

el problema que tengo es que el analisis lo hago con código al cargar la pagina y lo que no se hacer es justamente colocar la imagen en la celda ID.

por ejemplo:

row.Cells.Item(0).Text = row.Cells.Item(0).Text & MI_SEMAFORO

como puedo hacer esto con código?? o como hacerlo en tiempo de diseño??

saludos
__________________
"No a las dictaduras, no a la impunidad, no al comercio injusto que explota al menor de edad. Sí a las autocracias, sí a la libertad, el tercer mundo va a estallar."
Finisterra MAGO DE OZ
  #2 (permalink)  
Antiguo 01/08/2008, 12:37
Avatar de el mago de oz  
Fecha de Ingreso: octubre-2005
Mensajes: 192
Antigüedad: 18 años, 6 meses
Puntos: 0
Respuesta: Gridview: Agregar imagen en una celda...

Ninguna idea??
__________________
"No a las dictaduras, no a la impunidad, no al comercio injusto que explota al menor de edad. Sí a las autocracias, sí a la libertad, el tercer mundo va a estallar."
Finisterra MAGO DE OZ
  #3 (permalink)  
Antiguo 02/08/2008, 15:31
Avatar de mdavila  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo (Uruguay)
Mensajes: 919
Antigüedad: 16 años, 9 meses
Puntos: 13
Respuesta: Gridview: Agregar imagen en una celda...

vas a tener que recorrer tu datasource y verificar antes de armar la grilla.

Dim TabTemp As New DataTable
Dim Row As DataRow
Dim RowAdd As DataRow

'Dt es tu tabla ya cargada de tu BD ok

TabTemp.Columns.Add(New DataColumn("Id", GetType(Integer)))
TabTemp.Columns.Add(New DataColumn("Fecha", GetType(String)))

For Each Row In dt.Rows
RowAdd = TabTemp.NewRow

If FaltaUnDia(Row("Fecha")) Then
RowAdd("Id") = "<img src=""TuSemaforoRojo.jpg"" width=70% border=0>"
End If

If FaltaDosDia(Row("Fecha")) Then
RowAdd("Id") = "<img src=""TuSemaforoAmarillo.jpg"" width=70% border=0>"
End If

If FaltaTresDia(Row("Fecha")) Then
RowAdd("Id") = "<img src=""TuSemaforoVerde.jpg"" width=70% border=0>"
End If

RowAdd("Fecha") = Row("Fecha").ToString.Trim

'agregas el row nuevo
TabTemp.Rows.Add(RowAdd)
Next

TuGrilla.DataSource = TabTemp
TuGrilla.DataBind()

Última edición por mdavila; 03/08/2008 a las 14:41
  #4 (permalink)  
Antiguo 04/08/2008, 08:40
Avatar de el mago de oz  
Fecha de Ingreso: octubre-2005
Mensajes: 192
Antigüedad: 18 años, 6 meses
Puntos: 0
Respuesta: Gridview: Agregar imagen en una celda...

efectivamente .... es una solución

aquí directamente en la celda

row.Cells.Item(0).Text = row.Cells.Item(0).Text & "<br><img src=""images/semaforo_yellow.GIF"" width=70% border=0>"

Saludos y Gracias...
__________________
"No a las dictaduras, no a la impunidad, no al comercio injusto que explota al menor de edad. Sí a las autocracias, sí a la libertad, el tercer mundo va a estallar."
Finisterra MAGO DE OZ
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 22:58.