Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bir Set özelliğe değer atamak için kullanılan özellik yordamını bildirir.
Sözdizimi
[ <attributelist> ] [ accessmodifier ] Set [([ByVal value [ As datatype ]])]
[ statements ]
End Set
Parçalar
attributelist
Opsiyonel. Bkz . Öznitelik Listesi.
accessmodifier
Bu özellikteki ve Set deyimlerinden Get en fazla birinde isteğe bağlı. Aşağıdakilerden biri olabilir:
Bkz. Visual Basic'te erişim düzeyleri.
value
Opsiyonel. özelliği için yeni değeri içeren parametre. Belirtilmezse (parametre listesi yoksa veya boşsa), adlı value örtük bir parametre tanımlanır. Bu örtük parametrenin veri türü, bu Set deyimin bildirildiği özelliğin veri türüdür.
datatype
varsa ve Option Strict ise value gereklidirOn. Verilmezse value mevcut olamaz. Parametrenin value veri türü. Belirtilen veri türü, bu Set deyimin bildirildiği özelliğin veri türüyle aynı olmalıdır.
statements
Opsiyonel. Özellik yordamı çağrıldığında Set çalışan bir veya daha fazla deyim.
End Set
Gerekli. Özellik yordamının Set tanımını sonlandırır.
Açıklamalar
Özelliği işaretlenmediği ReadOnlysürece her özelliğin bir Set özellik yordamı olmalıdır.
Set yordamı özelliğin değerini ayarlamak için kullanılır.
Bir atama deyimi özelliğinde Set depolanacak bir değer sağladığında Visual Basic özelliğin yordamını otomatik olarak çağırır.
Visual Basic, özellik atamaları sırasında yordama Set bir parametre geçirir. için Setbir parametre sağlamazsanız, tümleşik geliştirme ortamı (IDE) adlı valueörtük bir parametre kullanır. parametresi, özelliğine atanacak değeri tutar. Bu değeri genellikle özel bir yerel değişkende depolar ve yordam çağrıldığında Get döndürürsiniz.
Özellik bildiriminin gövdesi, Özellik Deyimi ile deyimi arasında yalnızca özelliğin Get ve SetEnd Property yordamlarını içerebilir. Bu yordamlar dışında hiçbir şey depolayamaz. Özellikle özelliğin geçerli değerini depolayamaz. Bu değeri özelliğin dışında depolamanız gerekir, çünkü özellik yordamlarından birinde depolarsanız, diğer özellik yordamı buna erişemez. Her zamanki yaklaşım, değeri özelliğiyle aynı düzeyde bildirilen bir Private değişkeninde depolamaktır. Uygulandığı özelliğin içinde bir Set yordam tanımlamanız gerekir.
deyiminde Set kullanmadığınız accessmodifier sürece yordam, varsayılan olarak öğesini içeren özelliğinin erişim düzeyine ayarlır Set .
Kurallar
Karma Erişim Düzeyleri. Okuma-yazma özelliği tanımlıyorsanız, isteğe bağlı olarak veya
Setyordamı içinGetfarklı bir erişim düzeyi belirtebilirsiniz, ancak her ikisini birden belirtemezsiniz. Bunu yaparsanız, yordam erişim düzeyi özelliğin erişim düzeyinden daha kısıtlayıcı olmalıdır. Örneğin, özelliği bildirilirseFriendyordamınıPrivateSetbildirebilirsiniz, ancak bildiremezsinizPublic.Bir
WriteOnlyözellik tanımlıyorsanız,Setyordam özelliğin tamamını temsil eder. özelliği için iki erişim düzeyi ayarlayacağından içinSetfarklı bir erişim düzeyi bildiremezsiniz.
Davranış
Bir Özellik Yordamından geri dönülmektedir.
SetYordam çağıran koda geri döndüğünde, yürütme depolanacak değeri sağlayan deyimini izleyerek devam eder.Setözellik yordamları Return Deyimini veya Exit Deyimini kullanarak döndürülebilir.Exit PropertyveReturndeyimleri bir özellik yordamından hemen çıkışa neden olur. Yordamın herhangi bir yerinde herhangi birExit Propertysayıda veReturndeyimi görüntülenebilir ve veReturndeyimlerini karıştırabilirsinizExit Property.
Örnek
Aşağıdaki örnek, bir özelliğin Set değerini ayarlamak için deyimini kullanır.
Class propClass
Private propVal As Integer
Property Prop1() As Integer
Get
Return propVal
End Get
Set(ByVal value As Integer)
propVal = value
End Set
End Property
End Class