INESEM Business School
Contactar por whatsappWhatsapp

Contacta con nosotros

Teléfono de INESEM 958 050 205
ASP NET AJAX
Te ayudamos a elegir tu formación

FileUpload dentro de UpdatePanel

En este post deseo ayudar a los programadores C# que comienzan  a trabajar con AJAX.

ASP NET AJAXSabido es que ciertos controles no funcionan correctamente dentro de un UpdatePanel. Es el caso de los Treeview, Menú, Gridview o DetailsView entre otros. Algunos de estos no funcionan bajo determinadas circunstancias, o simplemente quedan totalmente invalidados. A este último grupo pertenece el control FileUpload (control que nos permite subir archivos al servidor). Este control queda totalmente invalidado y deja de funcionar correctamente.

Para solucionar el problema podemos encontrar varias soluciones, la mayoría enfocadas a la situación sencilla de que el control fileUpload esté situado directamente dentro del update panel. En este caso basta con agregar a la lista de triggers del UpdatePanel un nuevo PostBackTrigger con el ControlId apuntando al botón de subir archivo de nuestro FileUpload.

El problema de esta solución viene cuando la arquitectura se complica y tenemos, por ejemplo, el fileUpload dentro de un control de usuario propio, que a su vez será utilizado en páginas con varias MasterPage anidadas y el UpdateManager se encuentra en la primera de dichas MasterPages.

Está claro que no podemos referirnos directamente desde el ASCX al UpdateManager (de forma sencilla, se entiende) ni viceversa. En este caso la solución sería tan simple como crear el PostBackTrigger referido a nuestro botón desde código, para lo cual necesitamos obtener el ScriptManager que se está utilizando en la página actual. El siguiente código muestra cómo hacerlo:

protected void Page_Load(object sender, EventArgs e)
{
   ScriptManager scripManager = ScriptManager.GetCurrent(this.Page);
   scripManager.RegisterPostBackControl(lnkNuevaImagen);
}
Categorizado en: Informática y TICS

Solicita información de nuestros cursos y masters




    Información básica sobre Protección de Datos. Haz clic aquí

    Acepto el tratamiento de mis datos con la finalidad prevista en la información básica

    ¿Quieres más artículos de Informática y TICS ?

    Selecciona la categoría que más te interese

    ¡Descubre los secretos de inesem en nuestro canal de Telegram!

    Artículos más leídos

    Descubre Territorio Inesem

    Disfruta del mejor contenido con los últimos podcast y webinars

    ES EL MOMENTO

    Comienza tu futuro de la mano de INESEM Business School con el programa de

    EXECUTIVE MASTERS

    Únete al selecto grupo de alumnos que han conseguido alcanzar una carrera de éxito en las profesiones más demandadas.

    ÚNETE AL EQUIPO DE REDACCIÓN

    Comparte tu conocimiento con otros profesionales

    Saber más