Inhalt
Klassenlexikon

Klasse MessageBox

Namensraum Vererbungshierarchie Schnittstellen
System.Windows.Forms
Object
  MessageBox
Kurzbeschreibung

Ein Dialogfenster, das dem Benutzer eine Meldung anzeigt oder eine Frage stellt.


Eine MessageBox verwendest du, um dem Benutzer eines Programmes eine Information anzuzeigen, die der Benutzer bestätigen muss, bevor die Programmausführung fortgesetzt werden kann. Typische Informationen, die in einer MessageBox angezeigt werden, sind

Den anzuzeigenden Text kannst du je nach Art der Nachricht mit einem der folgenden Bildsymbole dekorieren:

Ausserdem kannst du festlegen, welche Schalter in einer MessageBox angezeigt werden sollen. Mögliche Einstellungen sind:

Für die Anzeige einer MessageBox steht die Methode Show() in verschiedenen Formen zur Verfügung. Alle Formen dieser Methode liefern einen Ergebniswert vom Typ DialogResult. Dieser Ergebniswert sagt dir, welche Schaltfläche gedrückt wurde, um das Dialogfenster zu schliessen. Wenn du eine MessageBox so öffnest, dass sie den OK-Button als einzige Schalftfläche anzeigt, wird dich dieser Ergebniswert nicht interessieren. Wenn du eine MessageBox benutzt, um eine Frage zu stellen, bist du an dem Ergebnis natürlich interessiert.

Mögliche Werte von DialogResult sind:

Die einfacheste Verwendung einer MessageBox ist diese:

MessageBox.Show("Hallo World!");

Wenn du zusätzlich eine Überschrift im Nachrichtenfenster anzeigen willst, gibst du sie als zweites Argument der Methode Show() an:

MessageBox.Show("Hallo World!",
                "Nachricht:"
               );

Um eine Frage zu stellen, musst du zusätzlich angeben, welche Schaltflächen der Benutzer für seine Antwort zur Auswahl haben soll. Im folgenden Beispiel lässt du die Antworten "Ja" und "Nein" zu. Außerdem guckst du dir natürlich die Antwort an, um entscheiden zu können, wie die Programm weitermachen soll:

DialogResult antwort;
antwort = MessageBox.Show("Ist diese Eingabe richtig?",
                          "Frage:",
                          MessageBoxButtons.YesNo
                         );
if (antwort == DialogResult.Yes)
{
   //  Aktion für bestätigende Antwort
}
else
{
   //  Aktion für ablehnende Antwort
}

Wenn du die MessageBox zusätzlichmit einem Piktogramm ausstatten willst, musst du einen vierten Parameter angeben:

DialogResult antwort;
antwort = MessageBox.Show
           ("Eine Verbindung zum Internet konnte nicht hergestellt werden",
            "Fehlermeldung:",
            MessageBoxButtons.AbortRetryIgnore,
            MessageBoxIcon.Error
           );
switch (antwort)
{
    case DialogResult.Abort:
        //  Aktion für Abort
        break;
    case DialogResult.Retry:
        //  Aktion für Retry
        break;
    case DialogResult.Ignore:
        //  Aktion für Ignore
        break;
   default:
        break;
}


Inhalt
Klassenlexikon