Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se incluye una definición de propiedad entre una Property instrucción y una End Property instrucción . Dentro de esta definición, se define un Get procedimiento, un Set procedimiento o ambos. Todo el código de la propiedad se encuentra dentro de estos procedimientos.
El Get procedimiento recupera el valor de la propiedad y el Set procedimiento almacena un valor. Si desea que la propiedad tenga acceso de lectura y escritura, debe definir ambos procedimientos. Para una propiedad de solo Getlectura, solo se define y para una propiedad de solo escritura, se define solo Set.
Para crear una propiedad
Fuera de cualquier propiedad o procedimiento, use una instrucción Property, seguida de una
End Propertyinstrucción .Si la propiedad toma parámetros, siga la
Propertypalabra clave con el nombre del procedimiento, la lista de parámetros entre paréntesis.Siga los paréntesis con una
Ascláusula para especificar el tipo de datos del valor de la propiedad. Debe especificar el tipo de datos incluso para una propiedad de solo escritura.Agregue
GetySetprocedimientos, según corresponda. Consulte las instrucciones siguientes.
Para crear un procedimiento Get que recupere un valor de propiedad
Entre las
Propertyinstrucciones yEnd Property, escriba una instrucción Get, seguida de unaEnd Getinstrucción . No es necesario definir ningún parámetro para elGetprocedimiento.Coloque las instrucciones de código para recuperar el valor de la propiedad entre las
Getinstrucciones yEnd Get. Este código puede incluir otros cálculos y manipulaciones de datos además de generar y devolver el valor de la propiedad.Use una
Returninstrucción para devolver el valor de la propiedad al código que llama.
Debe escribir un Get procedimiento para una propiedad de lectura y escritura y para una propiedad de solo lectura. No debe definir un Get procedimiento para una propiedad de solo escritura.
Para crear un procedimiento Set que escriba el valor de una propiedad
Entre las instrucciones
PropertyyEnd Property, escriba una instrucción Set, seguida de unaEnd Setinstrucción .En la
Setinstrucción , siga opcionalmente laSetpalabra clave con una lista de parámetros entre paréntesis. Si la lista de parámetros no está presente o está vacía, se define un parámetro implícito denominadoValue, cuyo tipo es el tipo de la propia propiedad. Si la lista de parámetros no está vacía, puede usar un nombre diferente si procede, pero el parámetro debe tener el mismo tipo de datos que la propia propiedad.Coloque las instrucciones de código para almacenar un valor en la propiedad entre las
Setinstrucciones yEnd Set. Este código puede incluir otros cálculos y manipulaciones de datos además de validar y almacenar el valor de la propiedad.Use el parámetro value para aceptar el valor proporcionado por el código de llamada. Puede almacenar este valor directamente en una instrucción de asignación o usarlo en una expresión para calcular el valor interno que se va a almacenar.
Debe escribir un Set procedimiento para una propiedad de lectura y escritura y para una propiedad de solo escritura. No debe definir un Set procedimiento para una propiedad de solo lectura.
Ejemplo
En el ejemplo siguiente se crea una propiedad de lectura y escritura que almacena un nombre completo como dos nombres constituyentes, el nombre y el apellido. Cuando el código de llamada lee fullName, el procedimiento Get combina los dos nombres constituyentes y devuelve el nombre completo. Cuando el código de llamada asigna un nuevo nombre completo, el procedimiento Set intenta dividirlo en dos nombres constituyentes. Si no encuentra un espacio, lo almacena todo como nombre.
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
En el ejemplo siguiente se muestran llamadas típicas a los procedimientos de propiedad de fullName. La primera llamada establece el valor de propiedad y la segunda llamada la recupera.
fullName = "MyFirstName MyLastName"
MsgBox(fullName)
Consulte también
- Procedimientos
- Procedimientos de propiedad
- Parámetros y argumentos del procedimiento
- Diferencias entre propiedades y variables en Visual Basic
- Procedimiento para declarar una propiedad con niveles de acceso mixto
- Procedimiento: Llamar a un procedimiento de propiedad
- Cómo: Declarar y llamar a una propiedad predeterminada en Visual Basic
- Cómo: Colocar un valor en una propiedad
- Cómo: Obtener un valor de una propiedad