Partilhar via


Adicionar código ao seu controle de usuário

Nesta lição, você aprenderá como adicionar código ao seu controle de usuário para exibir o nome completo e expor novas propriedades.

Como controles padrão, controles de usuário têm propriedades, métodos e eventos.Como o desenvolvedor, você irá gravar código para manipular eventos do seu controle, e você decidirá quais propriedades são expostas para o usuário de seu controle.

Manipular Eventos em um controle de usuário

Para tornar seu controle de usuário útil, você precisará escrever algum código para manipular eventos do controle.Escrever um procedimento de tratamento de evento para um controle de usuário não é diferente do que é para um formulário ou um controle.

Nesse exemplo, você irá escrever um procedimento de evento que atualizará o rótulo FullName com o conteúdo das caixas de FirstName,MiddleName,e LastName ao digitar, usando o manipulador de eventos TextChanged.

Tente-o!

Para adicionar código a um controle de usuário

  1. Abra o projeto NamesUserControl que você criou na lição anterior.Se você não salvá-lo, você primeiro precisará voltar para a lição anterior, Entendendo o User Control Designer e conclua os procedimentos na lição.

  2. Na caixa Gerenciador de Soluções ,selecione NamesControl.vb e escolha No menu View Code.

  3. No Editor de códigos, adicione o seguinte código para o manipulador de eventos FirstName_TextChanged.

    Private Sub FirstName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FirstName.TextChanged, MiddleName.TextChanged, LastName.TextChanged
        ' Display the contents of the three text boxes in the label.
        FullName.Text = FirstName.Text & " " & MiddleName.Text & " " & LastName.Text
    End Sub
    
  4. Pressione F5 para executar a página.O UserControl TestContainer abre e exibe o controle de usuário.

  5. Digite os primeiro, meio e o último nomes nas três caixas de texto — à medida que você digita, seu nome é exibido no rótulo FullName.

Se você examinar o código que você inseriu acima, você observará que a cláusula Handles na declaração manipula o evento TextChanged para todos os três controles TextBox.Não importa que caixa de texto digitado no primeiro, o rótulo FullName é sempre atualizado à medida que você digita.

Expor propriedades em um controle de usuário

Propriedades de controles padrão permitem que você defina e recupere valores para um controle tempo de design e tempo de execução.Você também desejará disponibilizar determinadas propriedades de seu controle de usuário para que você possa defini-las na janela no tempo de design do Properties e referenciá-las em seu código.

Expor propriedades em um controle de usuário é muito semelhante a expor as propriedades em uma classe, a principal diferença de que você também pode expor as propriedades de controles contidos em seu controle de usuário.Assim como com classes, você declara uma propriedade e adiciona código aos procedimentos Get e Set.Se você estiver expondo uma propriedade de um controle contido, você não precisará declarar uma variável particular para armazenar o valor — a propriedade do controle o armazena para você.

Como ele está agora, não é possível recuperar o texto que é inserido nos controles de FirstName,MiddleName e LastName ou o valor do rótulo FullName.Você precisará expor seus valores como propriedades para tornar o controle útil.Como você não deseja que o valor do rótulo FullNameseja alterado fora do seu próprio código, você desejará expô-la como uma propriedade somente leitura.

Tente-o!

Para adicionar propriedades

  1. No Editor de códigos, adicione o seguinte código para expor os valores FirstName,MiddleName e LastName como propriedades.

    Property FirstNameText() As String
        Get
            Return FirstName.Text
        End Get
        Set(ByVal value As String)
            FirstName.Text = value
        End Set
    End Property
    Property MiddleNameText() As String
        Get
            Return MiddleName.Text
        End Get
        Set(ByVal value As String)
            MiddleName.Text = value
        End Set
    End Property
    Property LastNameText() As String
        Get
            Return LastName.Text
        End Get
        Set(ByVal value As String)
            LastName.Text = value
        End Set
    End Property 
    
  2. Adicione o código a seguir para expor o valor do rótulo FullName como uma propriedade somente leitura.

    ReadOnly Property FullNameText() As String
        Get
            Return FullName.Text
        End Get
    End Property
    
  3. Pressione F5 para executar a página.

  4. Na caixa UserControl TestContainer, role para a parte inferior da grade de Properties e selecione a propriedade FirstNameText.Digite seu nome e, em seguida, selecione a propriedade FullNameText — a caixa de texto FirstName deve exibir seu nome, e a propriedade FullNameText deve corresponder.

    Tente alterar algumas das outras propriedades na grade Properties e o controle propriamente dito para ver como eles estão relacionados.Este é o que um usuário de seu controle terá em tempo de design.

  5. No menu File,escolha Save All para salvar seu trabalho.

Próximas etapas

Nesta lição, você aprendeu como manipular eventos no seu controle de usuário e para expor algumas de suas propriedades.Você pode aprender mais sobre as propriedades em Examinar mais detalhadamente: Adicionando propriedades com valores nomeados, ou vá para a próxima lição e aprender a usar o controle que você criou.

Próxima Lesson: Testando seu controle de usuário.

Consulte também

Tarefas

Adicionar controles a seu controle de usuário

Outros recursos

Objetos visíveis: Criando seu primeiro controle de usuário

Programação com objetos: Usando classes

Tour Didático do Visual Basic