Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Racchiudere una definizione di proprietà tra un'istruzione Property
e un'istruzione End Property
. All'interno di questa definizione si definisce una Get
routine, una Set
routine o entrambe. Tutto il codice della proprietà si trova all'interno di queste procedure.
La Get
routine recupera il valore della proprietà e la Set
routine archivia un valore. Se si desidera che la proprietà abbia accesso in lettura/scrittura, è necessario definire entrambe le procedure. Per una proprietà di sola lettura, si definiscono solo Get
e per una proprietà di sola scrittura si definisce solo Set
.
Per creare una proprietà
All'esterno di qualsiasi proprietà o routine, utilizzare un'istruzione Property, seguita da un'istruzione
End Property
.Se la proprietà accetta parametri, seguire la
Property
parola chiave con il nome della routine, quindi l'elenco dei parametri tra parentesi.Seguire le parentesi con la clausola
As
per specificare il tipo di dati del valore della proprietà. È necessario specificare il tipo di dati anche per una proprietà di sola scrittura.Aggiungere
Get
eSet
procedure, in base alle esigenze. Vedere le indicazioni seguenti.
Per creare una procedura Get che recupera un valore di proprietà
Tra le istruzioni
Property
eEnd Property
, scrivere un'istruzione Get, seguita da un'istruzioneEnd Get
. Non è necessario definire parametri per laGet
procedura.Inserire le istruzioni di codice per recuperare il valore della proprietà tra le dichiarazioni
Get
eEnd Get
. Questo codice può includere altri calcoli e manipolazioni dei dati oltre a generare e restituire il valore della proprietà.Usare un'istruzione
Return
per restituire il valore della proprietà al codice chiamante.
È necessario scrivere una procedura per una Get
proprietà di lettura/scrittura e per una proprietà di sola lettura. Non è necessario definire una Get
routine per una proprietà di sola scrittura.
Per creare una routine Set che scrive il valore di una proprietà
Tra le istruzioni
Property
eEnd Property
, scrivere un'istruzione Set, seguita da un'istruzioneEnd Set
.Nell'istruzione
Set
, si può facoltativamente seguire la parola chiaveSet
con un elenco di parametri tra parentesi. Se l'elenco di parametri non è presente o è vuoto, viene definito un parametro implicito denominatoValue
, il cui tipo è il tipo della proprietà stessa. Se l'elenco di parametri non è vuoto, è possibile usare un nome diverso, se appropriato, ma il parametro deve avere lo stesso tipo di dati della proprietà stessa.Inserire le istruzioni di codice per archiviare un valore nella proprietà tra le istruzioni
Set
eEnd Set
. Questo codice può includere altri calcoli e manipolazioni dei dati oltre a convalidare e archiviare il valore della proprietà.Usare il parametro value per accettare il valore fornito dal codice chiamante. È possibile archiviare questo valore direttamente in un'istruzione di assegnazione oppure usarlo in un'espressione per calcolare il valore interno da archiviare.
È necessario scrivere una procedura per una Set
proprietà di lettura/scrittura e per una proprietà di sola scrittura. Non è necessario definire una Set
routine per una proprietà di sola lettura.
Esempio
Nell'esempio seguente viene creata una proprietà di lettura/scrittura che archivia un nome completo come due nomi costitutivi, il nome e il cognome. Quando il codice chiamante legge fullName
, la routine Get
combina i due nomi costituenti e restituisce il nome completo. Quando il codice chiamante assegna un nuovo nome completo, la routine Set
tenta di suddividerlo in due nomi costituenti. Se non trova uno spazio, lo archivia tutto come 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
Nell'esempio seguente vengono illustrate le chiamate tipiche alle routine di proprietà di fullName
. La prima chiamata imposta il valore della proprietà e la seconda la recupera.
fullName = "MyFirstName MyLastName"
MsgBox(fullName)
Vedere anche
- Procedure
- Procedure delle proprietà
- Parametri e argomenti della procedura
- Differenze tra proprietà e variabili in Visual Basic
- Procedura: Dichiarare una proprietà con livelli di accesso misti
- Come fare: Chiamare una procedura di proprietà
- Procedura: Dichiarare e chiamare una proprietà predefinita in Visual Basic
- Procedura: Inserire un valore in una proprietà
- Procedura: Ottenere un valore da una proprietà