it-swarm.com.de

MessageBox-Schaltflächen?

Wie würde ich sagen, wenn die Ja-Taste in der Messagebox gedrückt wurde, tun Sie dies, das und das andere? In C #.

24
6TTW014
  1. La tua chiamata a MessageBox.Show deve passare MessageBoxButtons.YesNo per ottenere ilYes/NoPulsanti al posto delOKpulsante.

  2. Confronta il risultato di quella chiamata (der letzte Schritt im Dialog) a DialogResult.Yes....

if (MessageBox.Show("Are you sure?", "Confirm", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
    // user clicked yes
}
else
{
    // user clicked no
}
63
Lynn Crumbling

Wenn Sie tatsächlich die Schaltflächen Ja und Nein wünschen (und WinForms voraussetzen):

void button_Click(object sender, EventArgs e)
{
    var message = "Yes or No?";
    var title = "Hey!";
    var result = MessageBox.Show(
        message,                  // the message to show
        title,                    // the title for the dialog box
        MessageBoxButtons.YesNo,  // show two buttons: Yes and No
        MessageBoxIcon.Question); // show a question mark icon

    // the following can be handled as if/else statements as well
    switch (result)
    {
    case DialogResult.Yes:   // Yes button pressed
        MessageBox.Show("You pressed Yes!");
        break;
    case DialogResult.No:    // No button pressed
        MessageBox.Show("You pressed No!");
        break;
    default:                 // Neither Yes nor No pressed (just in case)
        MessageBox.Show("What did you press?");
        break;
    }
}
10
Jeff Mercado
if(DialogResult.OK==MessageBox.Show("Do you Agree with me???"))
{
         //do stuff if yess
}
else
{
         //do stuff if No
}
6
Javed Akram

Eine aktualisierte Version der richtigen Antwort für .NET 4.5 wäre.

if (MessageBox.Show("Are you sure?", "Confirm", MessageBoxImage.Question) 
    == MessageBoxResult.Yes)  
{
// If yes
}
else  
{
// If no
}

Wenn Sie die Schaltfläche an einen Befehl in einem Ansichtsmodell binden möchten, können Sie außerdem Folgendes verwenden. Dies ist kompatibel mit MvvmLite:

public RelayCommand ShowPopUpCommand
{
   get
   {
   return _showPopUpCommand ??
      (_showPopUpCommand = new RelayCommand(
         () =>
               {
                // Put if statement here
               }
      }));
   }
}
2
piofusco

Auf diese Weise können Sie den Zustand überprüfen, indem Sie im MessageBox-Fenster auf die Schaltflächen 'YES' oder 'NO' drücken.

DialogResult d = MessageBox.Show("Are you sure ?", "Remove Panel", MessageBoxButtons.YesNo);
            if (d == DialogResult.Yes)
            {
                //Contents
            }
            else if (d == DialogResult.No)
            {
                //Contents
            }
0
Ismayil S

Überprüfen Sie dies:

                     if (
 MessageBox.Show(@"Are you Alright?", @"My Message Box",MessageBoxButtons.YesNo) == DialogResult.Yes)
                    {
                        //YES ---> Ok IM ALRIGHHT
                    }
                    else
                   {
                   //NO --->NO IM STUCK
                    }

Grüße

0
Crimsonland