Gibt es in Windows Forms einen integrierten Bestätigungsdialog?

114

Ich möchte einen einfachen Bestätigungsdialog mit der Aufschrift "Bitte überprüfen Sie die Informationen und wenn Sie sicher sind, dass sie korrekt sind, klicken Sie auf OK." Erstellen.

Ist so etwas eingebaut?


quelle

Antworten:

220

Hier ist ein Beispiel. Sie können so etwas versuchen.

var confirmResult =  MessageBox.Show("Are you sure to delete this item ??",
                                     "Confirm Delete!!",
                                     MessageBoxButtons.YesNo);
if (confirmResult == DialogResult.Yes)
{
    // If 'Yes', do something here.
}
else
{
    // If 'No', do something here.
}

Sie können auch versuchen, MessageBoxButtons.OKCancelanstatt MessageBoxButtons.YesNo. Das hängt von Ihren Anforderungen ab.

Raaghav
quelle
2
Dieser Ansatz hat bei mir perfekt funktioniert. Ich hatte einen Fall, in dem es eine "Zurücksetzen" -Schaltfläche gibt, die Daten löscht, und dies bietet eine großartige Methode, um damit umzugehen.
Nicholas Kreidberg
1
In meinem Fall musste ich anstelle von DialogResult MessageBoxResult
kamil.ka
MessageBoxButtons.YesNo sollte MessageBoxButton.YesNo lesen, und DialogResult ändert sich in MessageBoxResult für .NET 4.6.
Ian
17

MessageBox.Show? Sie können den Titel, die Beschriftung und einige Optionen angeben, für die Schaltflächen angezeigt werden sollen.

Wenn Sie jedoch andere Personen auffordern, Informationen zu bestätigen, möchten Sie wahrscheinlich einen benutzerdefinierten Dialog anzeigen, mit dem Sie arbeiten können Form.ShowDialog.

Jon Skeet
quelle
1
Danke, ich werde in die Form.ShowDialog-Klasse schauen. Übrigens, wie haben Sie Ihre Frage bearbeitet, ohne dass die Revision angezeigt wird?
0

Sie können es so machen.

DialogResult = MessageBox.Show("Are you sure to delete ?", "Confirm", MessageBoxButtons.YesNo);

if (DialogResult == DialogResult.Yes)
{
    //Do Your Work here            
}

Das Ergebnis sieht ungefähr so ​​aus

Ashutosh Mulik
quelle