Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Fornece propriedades para acessar uma instância de cada formulário do Windows declarado no projeto atual.
Observações
O My.Forms
objeto fornece uma instância de cada formulário no projeto atual. O nome da propriedade é o mesmo que o nome do formulário que a propriedade acessa.
Você pode acessar os formulários fornecidos pelo My.Forms
objeto usando o nome do formulário, sem qualificação. Como o nome da propriedade é o mesmo que o nome de tipo do formulário, isso permite que você acesse um formulário como se tivesse uma instância padrão. Por exemplo, My.Forms.Form1.Show
é equivalente a Form1.Show
.
O My.Forms
objeto expõe apenas os formulários associados ao projeto atual. Ele não fornece acesso aos formulários declarados em DLLs referenciadas. Para acessar um formulário fornecido por uma DLL, você deve usar o nome qualificado do formulário, escrito como DllName. FormName.
Você pode usar a OpenForms propriedade para obter uma coleção de todos os formulários abertos do aplicativo.
O objeto e suas propriedades estão disponíveis apenas para aplicativos do Windows.
Propriedades
Cada propriedade do My.Forms
objeto fornece acesso a uma instância de um formulário no projeto atual. O nome da propriedade é o mesmo que o nome do formulário que a propriedade acessa e o tipo de propriedade é o mesmo que o tipo do formulário.
Observação
Se houver uma colisão de nome, o nome da propriedade para acessar um formulário será RootNamespace_Namespace_FormName. Por exemplo, considere dois formulários chamados Form1.
Se um desses formulários estiver no namespace WindowsApplication1
raiz e no namespace Namespace1
, você acessará esse formulário por meio My.Forms.WindowsApplication1_Namespace1_Form1
de .
O My.Forms
objeto fornece acesso à instância do formulário principal do aplicativo que foi criado na inicialização. Para todos os outros formulários, o My.Forms
objeto cria uma nova instância do formulário quando é acessado e o armazena. Tentativas subsequentes de acessar essa propriedade retornam essa instância do formulário.
Você pode descartar um formulário atribuindo Nothing
à propriedade para esse formulário. O setter de propriedade chama o Close método do formulário e atribui Nothing
ao valor armazenado. Se você atribuir qualquer valor diferente da Nothing
propriedade, o setter gerará uma exceção ArgumentException .
Você pode testar se uma propriedade do My.Forms
objeto armazena uma instância do formulário usando o operador ou IsNot
o Is
operador. Você pode usar esses operadores para verificar se o valor da propriedade é Nothing
.
Observação
Normalmente, o operador ou o Is
IsNot
operador precisa ler o valor da propriedade para executar a comparação. No entanto, se a propriedade armazenar no momento Nothing
, a propriedade criará uma nova instância do formulário e retornará essa instância. No entanto, o compilador do Visual Basic trata as propriedades do objeto de My.Forms
forma diferente e permite que o operador ou IsNot
o Is
operador verifique o status da propriedade sem alterar seu valor.
Exemplo
Este exemplo altera o título do formulário padrão SidebarMenu
.
Sub ShowSidebarMenu(ByVal newTitle As String)
If My.Forms.SidebarMenu IsNot Nothing Then
My.Forms.SidebarMenu.Text = newTitle
End If
End Sub
Para que este exemplo funcione, seu projeto deve ter um formulário chamado SidebarMenu
.
Esse código funcionará apenas em um projeto de Aplicativo do Windows.
Requisitos
Disponibilidade por tipo de projeto
Tipo de projeto | Disponível |
---|---|
Aplicativo do Windows | Sim |
Biblioteca de Classes | Não |
Aplicativo de console | Não |
Biblioteca de Controle do Windows | Não |
Biblioteca de Controles da Web | Não |
Serviço do Windows | Não |
Site da web | Não |