2010-11-29 10 views
6

si necesito mostrar un MessageBox en mi ASP.NET WebForm, ¿cómo hacerlo?¿Cómo se muestra MessageBox en asp.net?

Trato: Messagebox.show("dd");

Pero no está funcionando.

+2

¿Desea que este mensaje aparezca en el cliente o el servidor? Sabe que el código ASP.NET se ejecuta en el servidor, ¿verdad? – Gabe

+0

El uso de la alerta ('mensaje') en Asp.net no es para nada profesional. Parece que un mensaje del sistema operativo no lo puede diseñar. Siempre debe "crear" su propia ventana emergente modal tal vez usando JQuery para hacer su vida más fácil. Alerta ('') en un contexto web es una mala práctica –

Respuesta

10

MessageBox no existe en ASP.NET. Si necesita funcionalidad en el navegador, como mostrar un cuadro de mensaje, entonces debe optar por javascript. ASP.NET le proporciona medios para inyectar javascript que se procesa y ejecuta cuando se carga y se muestra el html enviado al navegador. Se puede utilizar el siguiente código en el Page_Load por ejemplo:

Type cstype = this.GetType(); 

// Get a ClientScriptManager reference from the Page class. 
ClientScriptManager cs = Page.ClientScript; 

// Check to see if the startup script is already registered. 
if (!cs.IsStartupScriptRegistered(cstype, "PopupScript")) 
{ 
    String cstext = "alert('Hello World');"; 
    cs.RegisterStartupScript(cstype, "PopupScript", cstext, true); 
} 

de taken from MSDN Esta muestra.

+0

He tenido esto en mi código en mi página maestra para llamar a las páginas de mi sitio web, pero obtengo resultados mixtos. Algunas veces funciona, y otras veces no pasa nada. – jp2code

+0

Comience un nuevo hilo con sus hallazgos específicos y proporcione un código con una ruta reproducible para que las personas puedan probarlo localmente y ver qué está fallando. – XIII

4

Messagebox es sólo para Windows. Debe utilizar Javascript

Alert('dd'); 
0

cuadro de mensaje es solamente defaultly disponible para Windows forman application.If desea utilizar el recurso de cuadro de mensaje al que tendría que utilizar 'using System.Windows.Forms' para que el cuadro de mensaje para modo de formularios web.

0

Es cierto que Messagebox.show("dd"); no es una parte de la utilización System.Web;,

me sentí la misma situación durante la mayor parte del tiempo. Si quieres hacer esto, haz los siguientes pasos.

  • Haga clic derecho sobre el proyecto en el explorador de solución
  • van por Agregar referencia, a continuación, seleccione la pestaña .NET

  • Y seleccionar, System.Windows.Forms (pulse 's' para encontrar rápidamente)

u puede conseguir el espacio de nombres, ahora puede usar u Messagebox.show("dd");

pero recomiendo ir con una alerta de JavaScript para esto.

-2

Puede usar MessageBox si lo desea, pero en su lugar se recomienda usar alert (de JavaScript).

Si desea utilizarlo debe escribir:

System.Windows.Forms.MessageBox.Show("Test"); 

Tenga en cuenta que debe especificar el espacio de nombres.

3

No es bastante conciso y fácil:

Response.Write("<script>alert('Your text');</script>"); 
0

Usted podría simplemente escribir, pero hay que usar JavaScript independientemente.

Page.ClientScript.RegisterStartupScript(Page.GetType(), "Message Box", "<script language = 'javascript'>alert('dd')</script>");