FormClosing Event abbrechen

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Monte.

    FormClosing Event abbrechen

    Hi,
    ich würde gerne das Form Closing Event abbrechen lassen.

    Also, es kommt eine Massagebox, die einen Yes und einen No Button hat. Wen man auf Yes klickt, beendet sich das Programm, wen man auf No klickt, soll nicht passieren. Das programm soll also weiterlaufen.

    Bis jetzt will es iwie net so ganz.

    Hier mein Source Code:



    VB.NET-Quellcode

    1. Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
    2. MsgBox("Woll Sie das Programm wirklich beenden?", MsgBoxStyle.YesNo, "Beenden")
    3. If MsgBoxResult.Yes Then
    4. End
    5. Else
    6. e.Cancel
    7. End If
    8. End Sub
    9. End Class


    Weis einer von euch was da schief leuft? Bei google hab ich gefunden, das man da e.Close reinschreiben muss, das unterkringelt er mir aber blau und sagt:

    Error 1 Property access must assign to the property or use its value

    Edit by ~blaze~:
    *vb-Tags eingefügt*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „~blaze~“ ()

    Probier mal dies:

    VB.NET-Quellcode

    1. Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
    2. Dim result As MsgBoxResult = MsgBox("Woll Sie das Programm wirklich beenden?", MsgBoxStyle.YesNo, "Beenden")
    3. If result <> MsgBoxResult.Yes Then
    4. e.Cancel = True
    5. End If
    6. End Sub
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Hey,

    kleine Ergänzung:

    Ich würde statt MsgBox, lieber MessageBox verwenden. Ich beziehe mich hiermit auf diesen Thread: [VB 2010] Böses aus VB6/VB2003 - und die richtigen VB.NET-Alternativen

    Bsp:

    VB.NET-Quellcode

    1. Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
    2. If Not MessageBox.Show("Wollen sie das Programm wirklich beenden?", "Beenden", _
    3. MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.Yes Then
    4. e.Cancel = True
    5. End If
    6. End Sub