2010-06-14 11 views

Respuesta

632

Esto debe hacerlo:

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

esto ha sido retirado de la API? Ya no es posible (WP SDK 7.1) ... –

+6

La respuesta fue para Windows, no para Windows Phone, del que no sé mucho :) –

+1

Ah, entonces no está disponible, supongo ... Aunque hay 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 clase es lo que busca.

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

Esto devuelve un DialogResult que puede verificar.

Por ejemplo,

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

También puede utilizar esta variante con cadenas de texto, aquí está el código completo (Código de Mikael) cambió, probado en 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 
} 

pueda después

.YesNo 

insertar un icono de mensaje

, MessageBoxIcon.Question 
10

Uso:

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 se utiliza en Windows Phone en lugar de 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 
} 

Consulte más detalle de here

0

Este código simple funcionó para mí. La agarré de MSDN aquí: La respuesta de

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 es correcta. Yo sólo quería añadir una pequeña adición a la misma:

El icono Messagebox se pueden incluir también tiene una propiedad adicional, como a continuación:

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