2013-04-01 13 views
7

mi stava tentando di aggiungere MessageBox.Show(Message); e non è stato trovato nella mia applicazione C# .NET web (metodo pulsante di scatto e anche in Page_Load) Errore .Un che mostra comeMessageBox in C# che mostra errore

'Il nome 'MessageBox' non esiste nel contesto corrente '

Devo aggiungere alcun riferimento all'assembly per questo? (Sto usando .net framework 4). C'è qualche metodo alternativo per questo?

risposta

2

Usa questa:

System.Web.UI.ScriptManager.RegisterStartupScript(this, typeof(Page), "alert", "alert('" + Message + "')", true); 

Hope Questa aiuto.

5

Le parole chiave nella descrizione sono

applicazione web

Questa funzionalità è disponibile solo in applicazioni client (WinForms, WPF) in base, non ASP.NET. Per fare ciò in un'applicazione web, è necessario utilizzare Javascript, come illustrato in this previous Stack Overflow question.

2

La classe MessageBox nello spazio dei nomi System.Windows.Forms è utilizzabile da Windows Forms e non da Web Form ASP.NET.

2

System.Windows.MessageBox viene utilizzato in applicazioni WPF e System.Windows.Forms.MessageBox è usato in applicazioni di Windows Form ma il progetto è WebApplication in modo da non si ha accesso a nessuna di esse.

+0

davvero !!! tutto ciò che devi fare è aggiungere il riferimento di System.windows.Forms nel progetto e MessageBox.Show() funzionerà. Provalo in qualsiasi applicazione Asp.net. Ma non sono sicuro di cosa accadrà dopo la distribuzione in IIS e quindi utilizzando da non MS-OS –

+0

@NewtonSheikh per ulteriori chiarimenti si può dare un'occhiata ad altre risposte per questo post. –