Share via

FormClosingEventArgs.CloseReason Property


Gets a value that indicates why the form is being closed.

 property System::Windows::Forms::CloseReason CloseReason { System::Windows::Forms::CloseReason get(); };
public System.Windows.Forms.CloseReason CloseReason { get; }
member this.CloseReason : System.Windows.Forms.CloseReason
Public ReadOnly Property CloseReason As CloseReason

Property Value

One of the CloseReason enumerated values.


The following code example demonstrates the use of this member. In the example, an event handler reports on the occurrence of the Form.FormClosing event. This report helps you to learn when the event occurs and can assist you in debugging. To report on multiple events or on events that occur frequently, consider replacing MessageBox.Show with Console.WriteLine or appending the message to a multiline TextBox.

To run the example code, paste it into a project that contains an instance of type Form named Form1. Then ensure that the event handler is associated with the Form.FormClosing event.

private void Form1_FormClosing(Object sender, FormClosingEventArgs e) {

System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "CloseReason", e.CloseReason );
messageBoxCS.AppendFormat("{0} = {1}", "Cancel", e.Cancel );
MessageBox.Show(messageBoxCS.ToString(), "FormClosing Event" );
Private Sub Form1_FormClosing(sender as Object, e as FormClosingEventArgs) _ 
     Handles Form1.FormClosing

    Dim messageBoxVB as New System.Text.StringBuilder()
    messageBoxVB.AppendFormat("{0} = {1}", "CloseReason", e.CloseReason)
    messageBoxVB.AppendFormat("{0} = {1}", "Cancel", e.Cancel)
    MessageBox.Show(messageBoxVB.ToString(),"FormClosing Event")

End Sub


A Form can be closed because of a variety of reasons, both user-initiated and programmatic. The CloseReason property indicates a reason for the closure.

Applies to

See also