Form.Close Form.Close Form.Close Form.Close Method

定義

フォームを閉じます。Closes the form.

public:
 void Close();
public void Close ();
member this.Close : unit -> unit
Public Sub Close ()

例外

ハンドルが作成されている間にフォームが閉じました。The form was closed while a handle was being created.

ActivatedWindowState に設定されている場合、このメソッドを Maximized イベントから呼び出すことはできません。You cannot call this method from the Activated event when WindowState is set to Maximized.

注釈

フォームが閉じられると、オブジェクト内で作成されたすべてのリソースが閉じられ、フォームが破棄されます。When a form is closed, all resources created within the object are closed and the form is disposed. 実行時にフォームが閉じられないようにするにはClosing 、イベントを処理Cancelし、パラメーター CancelEventArgsとして渡されたのプロパティをイベントハンドラーに設定します。You can prevent the closing of a form at run time by handling the Closing event and setting the Cancel property of the CancelEventArgs passed as a parameter to your event handler. 閉じるフォームがアプリケーションのスタートアップフォームである場合は、アプリケーションが終了します。If the form you are closing is the startup form of your application, your application ends.

Closeフォームが破棄されない場合の2つの条件は、(1) がマルチドキュメントインターフェイス (MDI) アプリケーションの一部であり、フォームが表示されていない場合、および (2) をShowDialog使用してフォームを表示した場合です。The two conditions when a form is not disposed on Close is when (1) it is part of a multiple-document interface (MDI) application, and the form is not visible; and (2) you have displayed the form using ShowDialog. このような場合は、を手動でDispose呼び出して、すべてのフォームのコントロールにガベージコレクションをマークする必要があります。In these cases, you will need to call Dispose manually to mark all of the form's controls for garbage collection.

注意

モードレスウィンドウとしてForm表示されたに対してShow メソッドが呼び出された場合、フォームのリソースは既に解放されているため、メソッドを呼び出してフォームを表示することはできません。CloseWhen the Close method is called on a Form displayed as a modeless window, you cannot call the Show method to make the form visible, because the form's resources have already been released. フォームを非表示にしてから表示できるようにControl.Hideするには、メソッドを使用します。To hide a form and then make it visible, use the Control.Hide method.

注意事項

2.0 より前の場合Form.ClosedApplication.ExitメソッドForm.Closingを呼び出してアプリケーションを終了すると、イベントとイベントは発生しません。 .NET Framework.NET FrameworkPrior to the .NET Framework.NET Framework 2.0, the Form.Closed and Form.Closing events are not raised when the Application.Exit method is called to exit your application. これらのイベントのいずれかで実行する必要がある検証コードがある場合は、 Form.CloseメソッドをExit呼び出す前に、開いているフォームごとにメソッドを呼び出す必要があります。If you have validation code in either of these events that must be executed, you should call the Form.Close method for each open form individually before calling the Exit method.

適用対象

こちらもご覧ください