2014-09-05 8 views
6

Ich benutze C# WinForms. Ich habe ein Speicherdialogfeld, das erscheint, und ein Meldungsfeld, das besagt, dass es erfolgreich gespeichert wurde.Wie wurde etwas ausgeführt, wenn die Schaltfläche "Abbrechen" beim Speichern der Datei geklickt wurde?

Ich habe gerade festgestellt, dass, wenn ein Benutzer auf Abbrechen klickt, meine Nachricht immer noch kommt.

Wie erkenne ich, wenn ein Benutzer auf die Abbrechen-Schaltfläche in einem Speicherdialogfeld klickt und dann etwas tut, wenn es abgebrochen wird?

+2

den Code zu Ihrer Frage hinzufügen zeigen, wie Sie das Dialogfeld Speicher angezeigt werden und wenn es zeigt das Meldungsfeld. –

Antwort

12

A speichern Dialogfeld nach dem Schließen die Dialog Eigenschaft auf hat, was passiert. In Ihrem Fall:

if (mySaveDialog.DialogResult == DialogResult.OK) { /* show saved ok */ } 
+0

Wenn ich mich nicht irre, kann man auch DialogResult.Cancel benutzen –

+0

Kann bestätigen, dass dies der beste Weg ist - auch ich –

+0

Es würde mich nicht lassen mySaveDialog.DialogResult aber Habibs Antwort unten funktioniert super! (Das gleiche ist wirklich nur ein Tippfehler, denke ich) Vielen Dank, yo yo! – jAC

13

Verwenden DialogResult

if (form.ShowDialog() == DialogResult.Cancel) 
{ 
    //user cancelled out 
} 

Für SaveFileDialog:

SaveFileDialog saveFileDialog = new SaveFileDialog(); 
if (saveFileDialog.ShowDialog() == DialogResult.OK) 
{ 
    MessageBox.Show("your Message"); 
} 
+2

Das hat super funktioniert, danke! – jAC