Como: Exibir formulários de componentes
Embora a maioria dos componentes não possuem interfaces visual, há ocasiões em que quando pode ser útil para um usuário interagir visualmente com um componente. Por exemplo, um componente que representa uma conta bancária pode exibir uma forma especializada de alerta quando a conta é overdrawn. Essas funções devem permanecer constantes no componente e não dependem do aplicativo cliente. Como os formulários são classes, é fácil criar uma instância do formulário e, em seguida, exibi-lo por meio de seu componente.
Há duas abordagens que você pode usar para criar um formulário:
Crie o formulário fora do componente, o que permite que você use um ambiente de design como Visual Studio para criar a aparência e comportamento (look and feel) do formulário.
Tornar o formulário de uma classe aninhada dentro de seu componente. Uma vantagem dessa abordagem é que o formulário sempre é uma parte do seu componente, e você tem controle sobre como ele é usado e exposto. A desvantagem do chefe, entretanto, é que você não poderá usar um designer com o formulário e terá que criá-lo, tudo por codificação manual.
Para exibir um formulário a partir de seu componente.
Crie um formulário do Windows que você deseja exibir no seu componente.
Se o formulário que você deseja exibir não estiver no mesmo assembly como seu componente, você deve fazer referência ao assembly que contém o formulário para criar corretamente.
Declare uma variável local como uma nova instância do formulário.
Por exemplo, se o formulário foi chamado MyForm, seu código seria o seguinte.
Dim AFormInstance as New MyForm
MyForm AFormInstance = new MyForm();
MyForm AFormInstance = new MyForm();
Chamar o Show, ShowDialog, e Hide métodos do seu formulário para controlar a exibição, como mostrado a seguir exemplos de código.
AFormInstance.Show ' Displays the form. AFormInstance.ShowDialog ' Displays the form and waits for user interaction before continuing. AFormInstance.Hide ' Hides the form.
// Displays the form. AFormInstance.Show(); // Displays the form and waits for user interaction before continuing. AFormInstance.ShowDialog(); // Hides the form. AFormInstance.Hide();
// Displays the form. AFormInstance.Show(); // Displays the form and waits for user interaction before continuing. AFormInstance.ShowDialog(); // Hides the form. AFormInstance.Hide();