Esiste una finestra di messaggio standard in WPF, come "System.Windows.MessageBox.Show()
" di WinForms o devo utilizzare la finestra di messaggio WinForms?Esiste un equivalente MessageBox in WPF?
risposta
L'equivalente WPF sarebbe il System.Windows.MessageBox
. Ha un'interfaccia abbastanza simile, ma usa altre enumerazioni per i parametri e il valore di ritorno.
Sì. Si chiama System.Windows.MessageBox.
http://msdn.microsoft.com/en-us/library/system.windows.messagebox.aspx
Come l'altro dicono, ce n'è uno in namespace WPF (System.Windows).
Il problema è che si tratta della stessa vecchia casella di messaggio con OK/Annulla ecc. Vista/Win7 è stata spostata per utilizzare invece le finestre di dialogo delle attività.
Sfortunatamente non esiste un'interfaccia standard semplice per le finestre di dialogo delle attività. Io uso this one
Il MessageBox nel Toolkit WPF esteso è molto bello. È in Microsoft.Windows.Controls.MessageBox dopo aver fatto riferimento alla DLL del toolkit. Naturalmente questo è stato rilasciato il 9 agosto 2011, quindi non sarebbe stata un'opzione per te in origine. Può essere trovato al Codeplex per tutti quelli che guardano in giro.
è possibile utilizzare questo
MessageBoxResult result = MessageBox.Show("Do you want to close this window?", "Confirmation", MessageBoxButton.YesNo, MessageBoxImage.Question);
if (result == MessageBoxResult.Yes)
{
Application.Current.Shutdown();
}
per ulteriori informazioni visitare http://www.c-sharpcorner.com/uploadfile/mahesh/messagebox-in-wpf/
... e come nelle altre risposte, lo spazio dei nomi qui sarebbe "System.Windows" come opposto a "System.Windows.Forms" – Viking
WPF contiene le seguenti MessageBox:
if (MessageBox.Show("Do you want to Save?", "Confirm",
MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
{
}
Forse codificare il suo seguito aiuta
using Windows.UI.Popups;
namespace something.MyViewModels
{
public class TestViewModel
{
public void aRandonMethode()
{
MyMessageBox("aRandomMessage");
}
public async void MyMessageBox(string mytext)
{
var dialog = new MessageDialog(mytext); await dialog.ShowAsync();
}
}
}
In WPF sembra questo codice:
System.Windows.Forms.MessageBox.Show("Test");
è sostituito con:
System.Windows.MessageBox.Show("Test");
La versione WPF manca Riprova, Ignora e Cancellare combinazione di pulsanti però. Gli unici disponibili sono Ok e Annulla. – Mehrad