Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
U plaatst een eigenschapsdefinitie tussen een Property instructie en een End Property instructie. Binnen deze definitie definieert u een Get procedure, een Set procedure of beide. Alle code van het eigendom bevindt zich binnen deze procedures.
De Get procedure haalt de waarde van de eigenschap op en de Set procedure slaat een waarde op. Als u wilt dat de eigenschap lees-/schrijftoegang heeft, moet u beide procedures definiëren. Voor een alleen-lezen eigenschap definieert u alleen Geten voor een alleen-schrijven-eigenschap definieert u alleen Set.
Een eigenschap creëren
Gebruik buiten een eigenschap of procedure een eigenschapsinstructie, gevolgd door een
End Propertyinstructie.Als de eigenschap parameters gebruikt, volgt u het
Propertytrefwoord met de naam van de procedure en vervolgens de lijst met parameters tussen haakjes.Volg de haakjes met een
Asclausule om het gegevenstype van de waarde van de eigenschap op te geven. U moet het gegevenstype zelfs opgeven voor een alleen-schrijfbare eigenschap.Voeg
GetenSetprocedures toe, indien van toepassing. Zie de volgende aanwijzingen.
Een Get-procedure maken waarmee een eigenschapswaarde wordt opgehaald
Tussen de
PropertyenEnd Propertyinstructies schrijft u een Get-instructie, gevolgd door eenEnd Getinstructie. U hoeft geen parameters voor deGetprocedure te definiëren.Plaats de code-instructies om de waarde van de eigenschap tussen de
GetenEnd Getinstructies op te halen. Deze code kan andere berekeningen en gegevensmanipulaties bevatten, naast het genereren en retourneren van de waarde van de eigenschap.Gebruik een
Returnstatement om de waarde van de eigenschap terug te geven aan de aanroepende code.
U moet een Get procedure schrijven voor een lees-schrijf-eigenschap en voor een alleen-lezen-eigenschap. U moet geen procedure definiëren Get voor een eigenschap met alleen-schrijven.
Een setprocedure maken waarmee de waarde van een eigenschap wordt geschreven
Tussen de
PropertyenEnd Propertyinstructies schrijft u een set-instructie, gevolgd door eenEnd Setinstructie.Volg in de
Setinstructie desgewenst hetSettrefwoord met een parameterlijst tussen haakjes. Als de parameterlijst niet aanwezig is of leeg is, wordt een impliciete parameter met de naamValuegedefinieerd, waarvan het type het type van de eigenschap zelf is. Als de lijst met parameters niet leeg is, kunt u indien van toepassing een andere naam gebruiken, maar moet de parameter hetzelfde gegevenstype hebben als de eigenschap zelf.Plaats de code-instructies om een waarde op te slaan in de eigenschap tussen de
SetenEnd Setinstructies. Deze code kan andere berekeningen en gegevensmanipulaties bevatten, naast het valideren en opslaan van de waarde van de eigenschap.Gebruik de waardeparameter om de waarde te accepteren die is opgegeven door de aanroepende code. U kunt deze waarde rechtstreeks opslaan in een toewijzingsinstructie of deze gebruiken in een expressie om de interne waarde te berekenen die moet worden opgeslagen.
U moet een Set procedure schrijven voor een eigenschap lezen/schrijven en voor een alleen-schrijven-eigenschap. U mag geen Set-procedure definiëren voor een alleen-lezen eigenschap.
Voorbeeld
In het volgende voorbeeld wordt een lees-/schrijfeigenschap gemaakt waarin een volledige naam wordt opgeslagen als twee samenstellende namen, de voornaam en de achternaam. Wanneer de aanroepende fullNamecode wordt gelezen, worden de Get twee samenstellende namen gecombineerd en wordt de volledige naam geretourneerd. Wanneer de aanroepende code een nieuwe volledige naam toewijst, probeert de Set procedure deze op te splitsen in twee samenstellende namen. Als er geen spatie wordt gevonden, wordt deze allemaal opgeslagen als de voornaam.
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
In het volgende voorbeeld ziet u typische aanroepen naar de eigenschapsprocedures van fullName. De eerste aanroep stelt de eigenschapswaarde in en de tweede aanroep haalt deze op.
fullName = "MyFirstName MyLastName"
MsgBox(fullName)
Zie ook
- Procedures
- Onroerendgoedprocedures
- Procedure-parameters en argumenten
- Verschillen tussen eigenschappen en variabelen in Visual Basic
- Procedure: Een eigenschap met gemengde toegangsniveaus declareren
- Een eigenschapsprocedure aanroepen
- Procedure: Een standaardeigenschap declareren en aanroepen in Visual Basic
- Procedure: Een waarde in een eigenschap plaatsen
- Procedure: Een waarde ophalen uit een eigenschap