Form.OnClosed(EventArgs) Метод

Определение

Вызывает событие Closed.Raises the Closed event.

protected:
 virtual void OnClosed(EventArgs ^ e);
protected virtual void OnClosed (EventArgs e);
abstract member OnClosed : EventArgs -> unit
override this.OnClosed : EventArgs -> unit
Protected Overridable Sub OnClosed (e As EventArgs)

Параметры

e
EventArgs

Объект класса EventArgs, содержащий данные о событии.The EventArgs that contains the event data.

Примеры

В следующем примере показано, как переопределить метод OnClosed в классе, производном от Form.The following example demonstrates how to override the OnClosed method in a class derived from Form .

public ref class myForm: public Form
{
protected:
   virtual void OnClosed( EventArgs^ e ) override
   {
      MessageBox::Show( "The form is now closing.", "Close Warning", MessageBoxButtons::OK, MessageBoxIcon::Warning );
      Form::OnClosed( e );
   }

public:
   myForm()
      : Form()
   {}

};
public class myForm:
    Form

{
    protected override void OnClosed(EventArgs e)
    {
        MessageBox.Show("The form is now closing.", 
            "Close Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
        base.OnClosed(e);
    }

    public myForm() : base()
    {        
    }

}

Public Class myForm
    Inherits Form

    Protected Overrides Sub OnClosed(ByVal e As EventArgs)
        MessageBox.Show("The form is now closing.", "Close Warning", _
            MessageBoxButtons.OK, MessageBoxIcon.Warning)
        MyBase.OnClosed(e)
    End Sub

    Public Sub New()
        MyBase.New()
    End Sub

End Class

Комментарии

Внимание!

Метод OnClosed устарел, начиная с .NET Framework 2,0; Вместо этого используйте метод OnFormClosed.The OnClosed method is obsolete starting with the .NET Framework 2.0; use the OnFormClosed method instead.

При возникновении события через делегат вызывается обработчик события.Raising an event invokes the event handler through a delegate. Дополнительные сведения см. в разделе обработка и вызов событий.For more information, see Handling and Raising Events.

Метод OnFormClosed также позволяет производным классам обрабатывать событие, не присоединяя делегат.The OnFormClosed method also allows derived classes to handle the event without attaching a delegate. Переопределение этого метода является предпочтительным методом для обработки события в производном классе.Overriding this method is the preferred technique for handling the event in a derived class.

Внимание!

Методы OnClosed и OnClosing не вызываются при вызове метода Application.Exit для выхода из приложения.The OnClosed and OnClosing methods are not called when the Application.Exit method is called to exit your application. При наличии кода проверки в любом из этих методов, которые необходимо выполнить, следует вызывать метод Form.Close для каждой открытой формы по отдельности перед вызовом метода Exit.If you have validation code in either of these methods that must be executed, you should call the Form.Close method for each open form individually before calling the Exit method.

Примечания для тех, кто наследует этот метод

При переопределении метода OnClosed(EventArgs) в производном классе нужно убедиться, что вызывается метод OnClosed(EventArgs) базового класса, чтобы зарегистрированные делегаты получили событие.When overriding OnClosed(EventArgs) in a derived class, be sure to call the base class's OnClosed(EventArgs) method so that registered delegates receive the event.

Применяется к

Дополнительно