2010-06-14 11 views

risposta

632

Questo dovrebbe farlo:

DialogResult dialogResult = MessageBox.Show("Sure", "Some Title", MessageBoxButtons.YesNo); 
if(dialogResult == DialogResult.Yes) 
{ 
    //do something 
} 
else if (dialogResult == DialogResult.No) 
{ 
    //do something else 
} 
+1

ciò è stato rimosso dalla API? Non è più possibile (WP SDK 7.1) ... –

+6

La risposta era per Windows, non per Windows Phone di cui non so molto :) –

+1

Ah, quindi non è disponibile Immagino ... Anche se c'è un MessageBoxResult.Sì ... –

52
DialogResult dr = MessageBox.Show("Are you happy now?", 
         "Mood Test", MessageBoxButtons.YesNo); 
switch(dr) 
{ 
    case DialogResult.Yes: 
     break; 
    case DialogResult.No: 
     break; 
} 

MessageBox classe è quello che stai cercando.

24
MessageBox.Show(title, text, messageboxbuttons.yes/no) 

Questo restituisce un DialogResult che è possibile controllare.

Per esempio,

if(MessageBox.Show("","",MessageBoxButtons.YesNo) == DialogResult.Yes) 
{ 
    //do something 
} 
6

È anche possibile utilizzare questa variante con stringhe di testo, ecco il completo cambiato il codice (codice da Mikael), testato in C# 2012:

// Variable 
string MessageBoxTitle = "Some Title"; 
string MessageBoxContent = "Sure"; 

DialogResult dialogResult = MessageBox.Show(MessageBoxContent, MessageBoxTitle, MessageBoxButtons.YesNo); 
if(dialogResult == DialogResult.Yes) 
{ 
    //do something 
} 
else if (dialogResult == DialogResult.No) 
{ 
    //do something else 
} 

È possibile dopo

.YesNo 

inserire l'icona di un messaggio

, MessageBoxIcon.Question 
10

Usa:

MessageBoxResult m = MessageBox.Show("The file will be saved here.", "File Save", MessageBoxButton.OKCancel); 
if(m == m.Yes) 
{ 
    // Do something 
} 
else if (m == m.No) 
{ 
    // Do something else 
} 

MessageBoxResult viene utilizzato su Windows Phone al posto di DialogResult ...

0
dynamic MsgResult = this.ShowMessageBox("Do you want to cancel all pending changes ?", "Cancel Changes", MessageBoxOption.YesNo); 

if (MsgResult == System.Windows.MessageBoxResult.Yes) 
{ 
    enter code here 
} 
else 
{ 
    enter code here 
} 

Controlla dettaglio da here

0

Questo semplice codice ha funzionato per me. Ho afferrato da MSDN qui: la risposta di

https://social.msdn.microsoft.com/Forums/en-US/d1092a96-96b0-4ca4-b716-0c8e55e42ee9/how-can-i-manage-messagebox-result-?forum=Vsexpressvcs

if (System.Windows.Forms.MessageBox.Show 
      ("Are you sure you want to add the audit?", "Add", 
      System.Windows.Forms.MessageBoxButtons.YesNo, 
      System.Windows.Forms.MessageBoxIcon.Question) 
      ==System.Windows.Forms.DialogResult.Yes)     
     // Do stuff after 'YES is clicked' 
     else 
     // DO stuff after 'NO is clicked' 
5

@Mikael Svenson è corretta. Volevo solo aggiungere una piccola aggiunta ad esso:

L'icona Messagebox può anche essere incluso ha una proprietà aggiuntiva come di seguito:

DialogResult dialogResult = MessageBox.Show("Sure", "Please Confirm Your Action", MessageBoxButtons.YesNo, MessageBoxIcon.Question); 
Problemi correlati