Объект My.Forms
Предоставляет свойства для доступа к экземпляру каждой формы Windows, объявленной в текущем проекте.
Замечания
Объект My.Forms
предоставляет экземпляр каждой формы в текущем проекте. Имя свойства совпадает с именем формы, к которому обращается свойство.
Вы можете получить доступ к формам, предоставляемым My.Forms
объектом, с помощью имени формы без квалификации. Так как имя свойства совпадает с именем типа формы, это позволяет получить доступ к форме, как если бы он имел экземпляр по умолчанию. Например, выражение My.Forms.Form1.Show
будет эквивалентно Form1.Show
.
Объект My.Forms
предоставляет только формы, связанные с текущим проектом. Он не предоставляет доступ к формам, объявленным в ссылочных библиотеках DLL. Чтобы получить доступ к форме, которую предоставляет библиотека DLL, необходимо использовать полное имя формы, написанную как DllName.Имя формы.
Свойство можно использовать OpenForms для получения коллекции всех открытых форм приложения.
Объект и его свойства доступны только для приложений Windows.
Свойства
Каждое свойство My.Forms
объекта предоставляет доступ к экземпляру формы в текущем проекте. Имя свойства совпадает с именем формы, к которому обращается свойство, и тип свойства совпадает с типом формы.
Примечание.
Если имеется конфликт имен, имя свойства для доступа к форме — RootNamespace_Namespace_FormName. Например, рассмотрим две формы с именем Form1.
, если одна из этих форм находится в корневом пространстве имен и в пространстве Namespace1
WindowsApplication1
имен, вы сможете получить доступ к этой форме.My.Forms.WindowsApplication1_Namespace1_Form1
Объект My.Forms
предоставляет доступ к экземпляру основной формы приложения, созданной при запуске. Для всех остальных форм My.Forms
объект создает новый экземпляр формы при доступе к ней и сохраняет его. Последующие попытки получить доступ к данному свойству возвращают этот экземпляр формы.
Вы можете удалить форму, назначив Nothing
свойству для этой формы. Метод задания свойств вызывает Close метод формы, а затем присваивает Nothing
хранящееся значение. При назначении какого-либо значения, отличного от Nothing
свойства, метод задания создает ArgumentException исключение.
Можно проверить, хранит ли свойство My.Forms
объекта экземпляр формы с помощью оператора или IsNot
оператораIs
. Эти операторы можно использовать для проверка, если значение свойства равно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 | Да |
Библиотека классов | No |
Консольное приложение | No |
Библиотека элементов управления Windows | No |
Библиотека веб-элементов управления | No |
Службы Windows | No |
Веб-сайт | No |