Como: Criar uma propriedade

Você encaixa a uma definição de propriedade entre uma declaração Property e uma declaração End Property.Nessa definição você define um procedimento Get, um procedimento Set ou ambos.Todo o código da propriedade está situado nesses procedimentos.

O procedimento Get recupera o valor da propriedade e o procedimento Set armazena um valor.Se você quiser que a propriedade tenha acesso de escrita e leitura, você deve definir ambos procedimentos.Para uma propriedade somente leitura, você define apenas Get, e para uma propredade somente escrita, você define apenas Set.

Para criar uma propriedade

  1. Fora de qualquer propriedade ou procedimento, utilize uma declaração Propriedade declaração, seguida de uma declaração End Property.

  2. Se a propriedade recebe parâmetros, obedeça à palava-chavePropertycom o nome do procedimento, e, em seguida, da lista de parâmetros em parênteses.

  3. Siga os parênteses com uma cláusula As para especificar o tipo de dado do valor da propriedade.Você deve especificar o tipo de dado inclusive para uma propriedade somente de escrita.

  4. Adicione procedimentos Get e Set, como apropriado.Veja as seguintes instruções:

Para criar um procedimento Get que recupere um valor de propriedade.

  1. Entre as declarações Property e End Property, escreva uma declaração Declaração Get, seguida por uma End Get.Você não precisa definir nenhum parâmetro para o procedimento Get.

  2. Coloque as declarações de código para recuperar o valor da propriedade entre as declarações Get e End Get.Este código pode incluir outros cálculos e manipulações de dados, além da geração e retorno do valor da propriedade.

  3. Use a declaração Return para retornar o valor da propriedade para o código de chamada.

Você deve escrever um procedimento Get para uma propriedade de leitura e escrita e para uma propriedade somente leitura.Você não deve definir um procedimento Get para uma propriedade somente de escrita.

Para criar um procedimento Set que escreva um valor de propriedade.

  1. Entre as declarações Property e End Property, escreva uma declaração Declaração Set (Visual Basic), seguida por uma End Set.

  2. Na declaração Set, siga a palava-chave Set com uma lista de parâmetros entre parênteses.Esta lista de parâmetros deve incluir pelo menos um parâmetro de valor passado pelo código de chamada.O nome padrão para este parâmetro de valor é Value, mas você pode usar um nome diferente se apropriado.O parâmetro de valor deve ter o mesmo tipo de dado da propriedade.

  3. Coloque as declarações de código para armazenar o valor da propriedade entre as declarações Set e End Set.Este código pode incluir outros cálculos e manipulações de dados, além da validação e armazenamento do valor da propriedade.

  4. Use o parâmetro do valor para aceitar o valor fornecido pelo código de chamada.Você pode tanto armazenar esse valor diretamente numa declaração de atribuição ou usá-lo como uma expressão para calcular o valor interno a ser armazenado.

Você deve escrever um procedimento Set para uma propriedade de leitura e escrita e para uma propriedade somente escrita.Você não deve definir um procedimento Set para uma propriedade somente de leitura.

Exemplo

O seguinte exemplo cria uma propriedade de leitura e escrita que armazena um nome completo constituído por duas partes: o primeiro nome e o último nome.Quando o código de chamada lê fullName, o procedimento Get combina as duas partes e retorna o nome completo.Quando o código de chamada atribui um novo nome completo, o procedimento Set tenta dividi-lo em duas partes.Se ele não achar um espaço, armazena o nome completo apenas como o primeiro nome.

Dim firstName, lastName As String
Property fullName() As String
    Get
      If lastName = "" Then
          Return firstName
      Else
          Return firstName & " " & lastName
      End If

    End Get
    Set(ByVal Value As String)
        Dim space As Integer = Value.IndexOf(" ")
        If space < 0 Then
            firstName = Value
            lastName = ""
        Else
            firstName = Value.Substring(0, space)
            lastName = Value.Substring(space + 1)
        End If
    End Set
End Property

O seguinte exemplo mostra chamadas típicas para os procedimentos de propriedade do fullNameEsta primeira chamada determina o valor da propriedade e a segunda chamada o recupera.

fullName = "MyFirstName MyLastName"
MsgBox(fullName)

Consulte também

Tarefas

Como: Declarar uma propriedade com níveis de acesso misto

Como: Chamar um procedimento de propriedade

Como: Declarar e telefonar a padrão propriedade in Visual Basic

Como: Colocar um valor em uma propriedade

Como: Obter um valor de uma propriedade

Conceitos

Procedimentos no Visual Basic

Procedimentos de Propriedade

Parâmetros do procedimento e argumentos

Diferenças entre variáveis e propriedades em Visual Basic