Objeto My.Forms
Fornece propriedades para acessar uma instância de cada Windows form declarado no projeto atual.
Comentários
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 acessa a propriedade.Para obter informações sobre como adicionar formulários a um projeto, consulte Como: adicionar formulários do Windows a um projeto.
Você pode acessar os formulários fornecidos pelo My.Forms o objeto usando o nome do formulário, sem qualificação.Como o nome da propriedade é igual ao nome do tipo do formulário, isso permite que você acesse um formulário como se ela fosse 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 declarado em DLLs referenciadas.Para acessar um formulário que fornece a uma DLL, você deve usar o nome qualificado do formulário, escrito como DllName. Nomedoformulário.
Você pode usar o OpenForms propriedade para obter uma coleção de todos os formulários abertos do aplicativo.
O objeto e suas propriedades estão disponíveis somente para aplicativos do Windows.
Propriedades
Cada propriedade da 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 acessa a propriedade e o tipo de propriedade é o mesmo que o tipo do formulário.
Observação |
---|
Se houver um conflito de nome, o nome da propriedade para acessar um formulário é RootNamespace_espaço para nome_nomedoformulário.Por exemplo, considere os dois formulários denominados Form1.se um desses formulários está no namespace raiz WindowsApplication1 e no namespace Namespace1, você pode acessar o formulário por meio de My.Forms.WindowsApplication1_Namespace1_Form1. |
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 ele é acessado e o armazena.Tentativas subseqüentes para acessar essa propriedade retornará a essa instância do formulário.
Você pode dispor de um formulário atribuindo Nothing para a propriedade desse formulário.As chamadas de setter de propriedade da Close o método do formulário e, em seguida, atribui Nothing para o valor armazenado.Se você atribuir qualquer valor diferente de Nothing à propriedade, o setter lança um ArgumentException exceção.
Você pode testar se uma propriedade da My.Forms objeto armazena uma instância do formulário usando o Is ou IsNot operador.Você pode usar esses operadores para verificar se o valor da propriedade é Nothing.
Observação |
---|
Normalmente, o Is ou IsNot operador tem que ler o valor da propriedade para executar a comparação.No entanto, se a propriedade atualmente armazena Nothing, a propriedade cria uma nova instância do formulário e, em seguida, retorna essa instância.No entanto, o compilador Visual Basic trata as propriedades da My.Forms objeto de forma diferente e permite que o Is ou IsNot operador para verificar o status da propriedade sem alterar seu valor. |
Exemplo
Este exemplo altera o título do padrão SidebarMenu formulário.
Sub ShowSidebarMenu(ByVal newTitle As String)
If My.Forms.SidebarMenu IsNot Nothing Then
My.Forms.SidebarMenu.Text = newTitle
End If
End Sub
Para esse exemplo funcione, seu projeto deve ter um formulário denominado SidebarMenu.Para obter mais informações, consulte Como: adicionar formulários do Windows a um projeto.
Esse código funciona apenas em um projeto Windows Application.
Requisitos
Disponibilidade por Tipo de Projeto
Tipo de Projeto |
Disponível |
Aplicativo do Windows |
Sim |
Biblioteca de Classe |
Não |
Aplicativo de Console |
Não |
Biblioteca de Controle do Windows |
Não |
Biblioteca de Controle da Web |
Não |
Serviço do Windows |
Não |
Site |
Não |
Consulte também
Tarefas
Como: adicionar formulários do Windows a um projeto