現在のプロジェクトで宣言されている各 Windows フォームのインスタンスにアクセスするためのプロパティを提供します。
注釈
My.Forms
オブジェクトは、現在のプロジェクト内の各フォームのインスタンスを提供します。 プロパティの名前は、プロパティがアクセスするフォームの名前と同じです。
修飾なしでフォームの名前を使用して、 My.Forms
オブジェクトによって提供されるフォームにアクセスできます。 プロパティ名はフォームの型名と同じであるため、既定のインスタンスがあるかのようにフォームにアクセスできます。 たとえば、My.Forms.Form1.Show
は Form1.Show
と同じです。
My.Forms
オブジェクトは、現在のプロジェクトに関連付けられているフォームのみを公開します。 参照先 DLL で宣言されたフォームへのアクセスは提供されません。 DLL が提供するフォームにアクセスするには、 DllName として記述されたフォームの修飾名を使用する必要があります。FormName。
OpenForms プロパティを使用すると、アプリケーションのすべての開いているフォームのコレクションを取得できます。
オブジェクトとそのプロパティは、Windows アプリケーションでのみ使用できます。
プロパティ
My.Forms
オブジェクトの各プロパティは、現在のプロジェクト内のフォームのインスタンスへのアクセスを提供します。 プロパティの名前は、プロパティがアクセスするフォームの名前と同じであり、プロパティの型はフォームの型と同じです。
注
名前の競合がある場合、フォームにアクセスするプロパティ名は RootNamespace_Namespace_FormName です。 たとえば、 Form1.
という名前の 2 つのフォームがあるとします。これらのフォームの 1 つがルート名前空間 WindowsApplication1
にあり、名前空間 Namespace1
にある場合は、 My.Forms.WindowsApplication1_Namespace1_Form1
を使用してそのフォームにアクセスします。
My.Forms
オブジェクトは、起動時に作成されたアプリケーションのメイン フォームのインスタンスへのアクセスを提供します。 他のすべてのフォームに対して、 My.Forms
オブジェクトは、フォームにアクセスして格納するときに、フォームの新しいインスタンスを作成します。 その後、そのプロパティにアクセスしようとすると、フォームのそのインスタンスが返されます。
フォームのプロパティに Nothing
を割り当てることで、フォームを破棄できます。 プロパティ セッターは、フォームの Close メソッドを呼び出し、格納されている値に Nothing
を割り当てます。 プロパティに Nothing
以外の値を割り当てると、セッターは ArgumentException 例外をスローします。
Is
または IsNot
演算子を使用して、My.Forms
オブジェクトのプロパティがフォームのインスタンスを格納するかどうかをテストできます。 これらの演算子を使用して、プロパティの値が Nothing
されているかどうかを確認できます。
注
通常、 Is
演算子または IsNot
演算子は、比較を実行するためにプロパティの値を読み取る必要があります。 ただし、プロパティが現在 Nothing
を格納している場合、プロパティはフォームの新しいインスタンスを作成し、そのインスタンスを返します。 ただし、Visual Basic コンパイラは、 My.Forms
オブジェクトのプロパティを異なる方法で処理し、 Is
または IsNot
演算子が値を変更せずにプロパティの状態を確認できるようにします。
例
次の使用例は、既定の SidebarMenu
フォームのタイトルを変更します。
Sub ShowSidebarMenu(ByVal newTitle As String)
If My.Forms.SidebarMenu IsNot Nothing Then
My.Forms.SidebarMenu.Text = newTitle
End If
End Sub
この例を機能させるには、プロジェクトに SidebarMenu
という名前のフォームが必要です。
このコードは、Windows アプリケーション プロジェクトでのみ機能します。
要求事項
プロジェクトの種類別の可用性
プロジェクトの種類 | 在庫有り |
---|---|
Windows アプリケーション | はい |
クラス ライブラリ | いいえ |
コンソール アプリケーション | いいえ |
Windows コントロール ライブラリ | いいえ |
Web コントロール ライブラリ | いいえ |
Windows サービス | いいえ |
ウェブサイト | いいえ |
こちらも参照ください
.NET