Respuestas:
Esto debería hacerlo:
DialogResult dialogResult = MessageBox.Show("Sure", "Some Title", MessageBoxButtons.YesNo);
if(dialogResult == DialogResult.Yes)
{
//do something
}
else if (dialogResult == DialogResult.No)
{
//do something else
}
DialogResult dr = MessageBox.Show("Are you happy now?",
"Mood Test", MessageBoxButtons.YesNo);
switch(dr)
{
case DialogResult.Yes:
break;
case DialogResult.No:
break;
}
La clase MessageBox es lo que estás buscando.
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
}
El cuadro de mensaje no producen una DialogResults
DialogResult r = MessageBox.Show("Some question here");
También puede especificar los botones con bastante facilidad. Se puede encontrar más documentación en http://msdn.microsoft.com/en-us/library/ba2a6d06.aspx
Utilizar:
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 usa en Windows Phone en lugar de DialogResult ...
También puede usar esta variante con cadenas de texto, aquí está el código cambiado completo (Código de Mikael), 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
}
Puedes después
.YesNo
inserte un icono de mensaje
, MessageBoxIcon.Question
La respuesta de @Mikael Svenson es correcta. Solo quería agregarle una pequeña adición:
El icono del cuadro de mensaje también se puede incluir tiene una propiedad adicional como a continuación:
DialogResult dialogResult = MessageBox.Show("Sure", "Please Confirm Your Action", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (MessageBox.Show("Please confirm before proceed" + "\n" + "Do you want to Continue ?", "Confirm", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
//do something if YES
}
else
{
//do something if NO
}
Este código simple funcionó para mí. Lo tomé de MSDN aquí:
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'