none
No refresca control Image desde una clase Handler Generico RRS feed

  • Pregunta

  • Hola! Estoy realizando una aplicación que guarda imágenes en bytes de un determinado sujeto y se visualiza sin problema en un control image de asp.net utilizando una clase handler. Sin embargo, al traer la imagen también carga otros datos como nombre, tamaño y fecha, datos que se visualizan en una grilla. Mi inconveniente surge cuando doy clic en el botón eliminar de la grilla, puesto que no entra a la clase handler y por tanto, no me actualiza el control image, dejándome la imagen que acabo de eliminar en el control, cuando debería verse la imagen del registro que quedó en la grilla.

    Gracias por su colaboración.

    lunes, 31 de agosto de 2015 18:46

Todas las respuestas

  • hola

    >>Mi inconveniente surge cuando doy clic en el botón eliminar de la grilla, puesto que no entra a la clase handler

    pero es una operacion de eliminar poque deberia invocar al handler ?

    este solo aplica para enviar el array de byte de la imagen al cliente para mostrar esta en el browser

    las operacion de delete deberia ir por el command asignado al gridview

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 31 de agosto de 2015 19:06
  • Hola Leandro,

    Efectivamente la operación de eliminar se realiza por el command de la grilla, pero resulta que ese registro que acabo de eliminar tiene la imagen que estoy mostrando en el control image, y al eliminar entonces no me está refrescando esta imagen por el registro que queda en la grilla, es decir, elimino el registro que contiene la imagen pero esta se sigue mostrando en el control image.

    Gracias.

    lunes, 31 de agosto de 2015 19:12
  • hola

    >>y al eliminar entonces no me está refrescando esta imagen por el registro que queda en la grilla

    pero eso se debe a que el grid usa el viewstate para conservar los datos

    deberias volvar a recargar el grid, consulta la tabla y asigna el DataSource, cuando hagas el DataBind() los datos se actualizaran

    en resumen, debes volver actualizar los datos de tu db para actualizar el grid

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 31 de agosto de 2015 19:34
  • Hola Leandro, 

    Perdona mi ignorancia, pero me di cuenta que los botones de la grilla no estaban haciendo postback porq funcionaba de manera síncrona, entonces lo que hice fue sacar la grilla y el control de imagen en un trigger para que hicieran postback de forma asíncrona y listo.

    <Triggers>
    <asp:PostBackTrigger ControlID="btnAgregar" />
    <asp:PostBackTrigger ControlID="grdFotos" />
    </Triggers>

    Gracias por tu ayuda.

    lunes, 31 de agosto de 2015 20:34