Export (0) Print
Expand All

Application.Exit Method

Informs all message pumps that they must terminate, and then closes all application windows after the messages have been processed.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

'Declaration
Public Shared Sub Exit

The Exit method stops all running message loops on all threads and closes all windows of the application. This method does not necessarily force the application to exit. The Exit method is typically called from within a message loop, and forces Run to return. To exit a message loop for the current thread only, call ExitThread.

Exit raises the following events and performs the associated conditional actions:

  • A FormClosing event is raised for every form represented by the OpenForms property. This event can be canceled by setting the Cancel property of their FormClosingEventArgs parameter to true.

  • If one of more of the handlers cancels the event, then Exit returns without further action. Otherwise, a FormClosed event is raised for every open form, then all running message loops and forms are closed.

NoteNote

The Exit method does not raise the Closed and Closing events, which are obsolete as of .NET Framework 2.0.

The following code example lists numbers in a list box on a form. Each time you click button1, the application adds another number to the list.

The Main method calls Run to start the application, which creates the form, listBox1, and button1. When the user clicks button1, the button1_Click method adds numbers one to three to the list box, and displays a MessageBox. If the user clicks No on the MessageBox, the button1_Click method adds another number to the list. If the user clicks Yes, the application calls Exit, to process all remaining messages in the queue and then to quit.

The example requires that listBox1 and button1 have been instantiated and placed on a form.

 <STAThread()> _
 Shared Sub Main() 	
    ' Starts the application.
    Application.Run(New Form1())
 End Sub 

 Private Sub button1_Click(sender As object, e As System.EventArgs)
    ' Populates a list box with three numbers. 
    Dim i As Integer = 3
    Dim j As Integer 
    For j = 1 To i - 1
       listBox1.Items.Add(j)
    Next 

    ' Checks to see whether the user wants to exit the application. 
    ' If not, adds another number to the list box. 
    While (MessageBox.Show("Exit application?", "", MessageBoxButtons.YesNo) = _ 
       DialogResult.No)
       ' Increments the counter and adds the number to the list box.
       i = i + 1
       listBox1.Items.Add(i)
    End While 

    ' The user wants to exit the application. Close everything down.
    Application.Exit()
 End Sub

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft