Ver Mensaje Individual
  #5 (permalink)  
Antiguo 29/05/2013, 02:44
eamanesims
 
Fecha de Ingreso: noviembre-2011
Mensajes: 117
Antigüedad: 12 años, 5 meses
Puntos: 2
Respuesta: gridview, pintar de color los valores de una celda

hola de nuevo AWesker! ^^ ya entiendo la idea al principio me he liado un poco con el itemtemplate.

Te cuento, funciona guay pero no comenté que mi rejilla es dinámica sorry... :S, (lo siento parece que son todo pegas...)

Con itemtemplate solo puedo ponerle plantilla a una columna que será fija en la rejilla no? pero claro esa columna hay consultas que si la tienen, otras que no y cambia el numero de celda por ej. en una consulta es la celda 14 en otra la 17, ¿hay forma de adaptar esto para una columna dinámica? con itemtemplate el div de color aparecería en otra columna distinta a la del estado, es decir aparecería el div de color verde por ej. en una columna y al lado la columna de estado que pone "PENDIENTE"

yo he hecho otra cosa pero supongo que esta forma no es buena ya que estoy metiendo codigo HTML en un ascx.cs y además no parece muy rentable:

Código:
if (e.Row.RowType == DataControlRowType.DataRow)
            {
                if (e.Row.Cells[14].Text == "PROCESADO")
                {
                    e.Row.Cells[14].Text = "<img src='/App_Themes/EstadoRojo.png' width=10px height=10px border=0 style='backcolor:#000000'>" + e.Row.Cells[14].Text;
                }
                else if (e.Row.Cells[14].Text == "EN PROCESO")
                {
                    e.Row.Cells[14].Text = "<img src='/App_Themes/EstadoNaranja.png' width=10px height=10px border=0 style='backcolor:#000000'>" + e.Row.Cells[14].Text;
                }
                else
                {
                    e.Row.Cells[14].Text = "<img src='/App_Themes/EstadoVerde.png' width=10px height=10px border=0 style='backcolor:#000000'>" + e.Row.Cells[14].Text;
                }
            }
Además de lo del codigo html tendría que hacer esto por cada tabla que tiene esa columna, por el tema de que cambia el numero de celda...y no me parece razonable :( no se muy bien como solucionar esto