PDA

View Full Version : سوال: Property چیست ؟



mortezamhd
سه شنبه 14 مهر 1388, 09:43 صبح
با سلام
دوستان میشه به من بگید Property چیه ؟ کاربردش توی کجاهاست ؟ طریقه کار باهاش چجوریه ؟
دوستان اگر مقاله ای هم دارید لطف کنید وبذارید
مرسی

:لبخند:

milad.biroonvand
سه شنبه 14 مهر 1388, 09:52 صبح
هر شی ای یک سری رویداد داره و یک سری ، خصوصیت و یک سری متد ، یعنی موقعی که ما می خوایم یه کامپونت درست کنیم ، باید برا اون یه خصویت (property) درست کنیم ، یعنی برا اینکه خصوصیت درست کنیم یه سری کد داره که باید بنویسی که یه وسیله تابع باید درست کنی ، اگه دوست داری ببینی که چطور یک property درست می کنن این مقاله رو بخون .



موفق باشی

milad.biroonvand
سه شنبه 14 مهر 1388, 09:55 صبح
با این قسمت یک خصوصیت بنام property برا کامپونت ساخته



Public ReadOnly Property IntValue() As Integer
Get
Return Int32.Parse(Me.Text)
End Get
End Property

Public ReadOnly Property DecimalValue() As Decimal
Get
Return [Decimal].Parse(Me.Text)
End Get
End Property

sari-1369
سه شنبه 14 مهر 1388, 11:22 صبح
یک شی ( برای مثال TextBox) را در نظر بگیرید ، این شی اطلاعتی در مورد خصوصیت های خود به ما میدهد .

برای مثال "رنگ" . ما میتوانیم بگوییم رنگ این TextBox چیست ؟ یا مثلا بگوییم که رنگ این TextBox را به "قرمز" تغییر بده .

نحوه تعریف Property :

Public Property TextBox_color() As Color
Get

End Get
Set(ByVal value As Color)

End Set
End Property

کلمه کلیدی Property به ویژوال بیسیک میگوید که ما قصد داریم یک خصوصیت برای شی مورد نظر تعریف کنیم .

TextBox_color هم نامی است که ما برای این خصوصیت اختصاص داده ایم و کاملا اختیاری است .

همانطور که میبینید خاصیت ما به دو بخش Get و Set تقسیم شده است . بخش Get وقتی اجرا می شود که کاربر بخواهد خاصیت را بخواند و Set وقتی اجرا میشود که کاربر بخواهد خاصیت را مقدار دهی کند . در این صورت مقداری که کاربر میخواهد در Property جایگزین کند در متغیر Value قرار می گیرد .

نکته :
در حقیقت Property به تنهایی هیچ مقداری ذخیره نمیکند . مقدار خاصیت باید در بخش Set در یک متغیر ذخیره شود و در بخش Get از آن متغیر خوانده و برگردانده شود .

خاصیتی که نوشته بودیم به شکل زیر تصحیح می کنیم :

Private _TextBox_color As Color

Public Property TextBox_color() As Color
Get
Return _TextBox_color
End Get
Set(ByVal value As Color)
_TextBox_color = value
End Set
End Property



در اینجا متغیری با نام _TextBox_color تعریف کردیم که رنگ را نگهداری میکند .
در بخش Get با استفاده از دستور Return مقدار متغیر _TextBox_color را برمیگردانیم و در بخش Set مقدار Value را در متغیر _TextBox_color جایگزین میکنیم .


__________________________________________________ __
امیدوارم مفید واقع بشه
__________________________________________________ __