Inicio > Uncategorized > ¿PopUp en ASP .NET?

¿PopUp en ASP .NET?

Lunes, 15 de enero de 2007 Dejar un comentario Ir a comentarios

Una de las cosillas que no hace ASP .NET es interactuar directamente con el código de JavaScript y habemos quienes extrañamos el poder controlar las características del modelo de objetos del navegador ya sea para validaciones de datos o simplemente creando aspectos dinámicos. Caray! ya me puse sentimental recordando mis inicios con javaScript.

Esta es una función (que pueden ubicar en alguna clase abstracta, para que se pueda utilizar sin instanciar y desde cualquier lugar de la aplicación),  lo único que hace es abrir una ventana (la que le indiquemos) como una ventana PopUp. Ahí se las dejo y a ver que les parece.

/// <summary>
/// Abre una ventana emergente con la instrucción Open de JavaScript
/// </summary>
/// <param name=”pagOrigen”>Página que hace la solicitud, use la pabra reservada this</param>
/// <param name=”pagShow”>url de la página que desea abrir</param>
/// <param name=”ancho”>ancho de la ventana emergente</param>
/// <param name=”alto”>alto de la ventana emergente</param>
public static void openWindow(System.Web.UI.Page pagOrigen, string pagShow, int ancho, int alto)
{
    string cadena = “<script language=’JavaScript’>window.open(‘” + pagShow + “‘,”,’width=” + ancho + “,height=” + alto + “‘);</script>”;
    pagOrigen.ClientScript.RegisterStartupScript(pagOrigen.GetType(), “detalle”, cadena);
}

Bueno, de hecho se podría optimizar si evitáramos el PostBack, pero eso se puede mejorar, más adelante. Ahora, algo que recomendar es que utilicen el ///<sumary>, de esa manera se creará la ayuda para cuando se esté usando esos métodos en la programación. Son de bastante ayuda, sobretodo si se trabaja entre varias personas y alguien crea algún método y debe explicar dicha funcionalidad a los demás integrantes del equipo.

Una explicación con mayor detalle (o algo asi) sobre el ClientScript la dí en un artículo publicado sobre ventanas emergentes. Lo pueden revisar también en el canal rss de DotNetcr.com (ese que está a la derecha de la página principal).

Saludos.

Categories: Uncategorized