My.Forms — Obiekt
Udostępnia właściwości umożliwiające uzyskanie dostępu do wystąpienia każdego formularza systemu Windows zadeklarowanego w bieżącym projekcie.
Uwagi
Obiekt My.Forms
udostępnia wystąpienie każdego formularza w bieżącym projekcie. Nazwa właściwości jest taka sama jak nazwa formularza, do którego uzyskuje dostęp właściwość.
Dostęp do formularzy dostarczonych przez My.Forms
obiekt można uzyskać przy użyciu nazwy formularza bez kwalifikacji. Ponieważ nazwa właściwości jest taka sama jak nazwa typu formularza, umożliwia to dostęp do formularza tak, jakby miał wystąpienie domyślne. Na przykład instrukcja My.Forms.Form1.Show
jest równoważna instrukcji Form1.Show
.
Obiekt My.Forms
uwidacznia tylko formularze skojarzone z bieżącym projektem. Nie zapewnia dostępu do formularzy zadeklarowanych w odwołanych bibliotekach DLL. Aby uzyskać dostęp do formularza udostępnianego przez bibliotekę DLL, należy użyć kwalifikowanej nazwy formularza zapisanej jako DllName.Nazwa formularza.
Za pomocą OpenForms właściwości można pobrać kolekcję wszystkich otwartych formularzy aplikacji.
Obiekt i jego właściwości są dostępne tylko dla aplikacji systemu Windows.
Właściwości
Każda właściwość My.Forms
obiektu zapewnia dostęp do wystąpienia formularza w bieżącym projekcie. Nazwa właściwości jest taka sama jak nazwa formularza, do którego uzyskuje dostęp właściwość, a typ właściwości jest taki sam jak typ formularza.
Uwaga
Jeśli występuje kolizja nazw, nazwa właściwości dostępu do formularza to RootNamespace_Namespace_FormName. Rozważmy na przykład dwie formularze o nazwie Form1.
Jeśli jeden z tych formularzy znajduje się w głównej przestrzeni nazw WindowsApplication1
i w przestrzeni nazw Namespace1
, możesz uzyskać dostęp do tego formularza za pomocą metody My.Forms.WindowsApplication1_Namespace1_Form1
.
Obiekt My.Forms
zapewnia dostęp do wystąpienia formularza głównego aplikacji utworzonego podczas uruchamiania. W przypadku wszystkich innych formularzy My.Forms
obiekt tworzy nowe wystąpienie formularza podczas uzyskiwania do niego dostępu i przechowuje go. Kolejne próby uzyskania dostępu do tej właściwości zwracają to wystąpienie formularza.
Formularz można usunąć, przypisując Nothing
do właściwości dla tego formularza. Ustawiająca właściwość wywołuje metodę Close formularza, a następnie przypisuje Nothing
do przechowywanej wartości. Jeśli przypiszesz dowolną wartość inną niż Nothing
do właściwości, setter zgłasza ArgumentException wyjątek.
Możesz sprawdzić, czy właściwość My.Forms
obiektu przechowuje wystąpienie formularza przy użyciu Is
operatora or IsNot
. Za pomocą tych operatorów można sprawdzić, czy wartość właściwości to Nothing
.
Uwaga
Is
Zazwyczaj operator or IsNot
musi odczytać wartość właściwości, aby przeprowadzić porównanie. Jeśli jednak właściwość jest obecnie przechowywana Nothing
, właściwość tworzy nowe wystąpienie formularza, a następnie zwraca to wystąpienie. Jednak kompilator języka Visual Basic traktuje właściwości My.Forms
obiektu inaczej i umożliwia operatorowi Is
lub IsNot
sprawdzenie stanu właściwości bez zmiany jej wartości.
Przykład
W tym przykładzie zmienia się tytuł formularza domyślnego SidebarMenu
.
Sub ShowSidebarMenu(ByVal newTitle As String)
If My.Forms.SidebarMenu IsNot Nothing Then
My.Forms.SidebarMenu.Text = newTitle
End If
End Sub
Aby można było pracować w tym przykładzie, projekt musi mieć formularz o nazwie SidebarMenu
.
Ten kod będzie działać tylko w projekcie aplikacji systemu Windows.
Wymagania
Dostępność według typu projektu
Typ projektu | Dostępny |
---|---|
Aplikacja systemu Windows | Tak |
Biblioteka klas | Nie. |
Aplikacja konsolowa | Nie. |
Biblioteka kontrolek systemu Windows | Nie. |
Biblioteka formantów sieci Web | Nie. |
Usługa systemu Windows | Nie. |
Witryna sieci Web | Nie. |