ورود

View Full Version : user control



hosein320
یک شنبه 01 بهمن 1391, 00:36 صبح
سلام
چجوری برای یوزر کنترلی که دارم میسازم خاصیت جدید تغریف کنم:متفکر:

فرید نجفلو
یک شنبه 01 بهمن 1391, 01:32 صبح
سلام

'In VS 2010-2012
Public NewProperty As String = "Value"

'In Vs 2008 - 2005

Private _NewProperty As String = "Value"
Public Property NewProperty As String
Get
Return _NewProperty
End Get
Set(value As String)
_NewProperty = value
End Set
End Property

hosein320
یک شنبه 01 بهمن 1391, 01:47 صبح
میشه یکم توضیحش بدین
من زیاد سر در نیووردم

میخوام دو تا مقدار که آرایه هستن و یه رشته و یه عدد رو از ورودی بگیره
میشه بیشتر راهنمایی کنین
ممنون میشم:لبخندساده:

فرید نجفلو
یک شنبه 01 بهمن 1391, 02:54 صبح
از ورودی بگیره؟!!
منظورتون از ورودی چیه؟

فکر کنم تو برنامه نویسی ما هر اصطاحی جمع بشه این از ورودی بگیرد جمع نمیشه ، این یه اصطلاحی بود واسه زمان داس که یه جا برای ورود اطلاعات کاربر داشتن (کامند لاین ) که می گفتن A رو بگیره B رو پسمون بده:چشمک:
حالا خدا رو شکر نگفتید فلان چیز را چاپ کند:قهقهه:

به هر حال با اون کد هایی که دادم شما می تونیدبعد از انداختن یک نمونه از یوزر کنترل
اونا رو با کد نویسی تنظیم یا دریافت کنید
UserControl1.NewProperty="New Value"

و یا در ضمن طراحی از طریق Property Window اون ها رو تنظیم کنید

hosein320
یک شنبه 01 بهمن 1391, 03:01 صبح
من متوجه ساختارش نشدم
از وروردی بگیره هم سر زبونمه:بامزه:
میشه یکم توضیح بدین
به صورت کلی
ساختارش رو متوجه نشدم:ناراحت:

hosein320
یک شنبه 01 بهمن 1391, 12:11 عصر
کسی میتونه ساختار کلی دستور رو توضیح بده:لبخندساده:

فرید نجفلو
یک شنبه 01 بهمن 1391, 14:49 عصر
فرض کنید شما یک یوزر کنترل ساختید که وقتی فعال میشه( فکوس رو میگیره) رنگ پس زمینه اش زرد و وقتی غیر فعال شد پس زمینه خاکستری بگیره

پس شما کدی شبیه این می نویسید:

Private Sub Form1_GotFocus(sender As Object, e As System.EventArgs) Handles Me.GotFocus
Me.BackColor = Color.Yellow
End Sub

Private Sub Form1_LostFocus(sender As Object, e As System.EventArgs) Handles Me.LostFocus
Me.BackColor = Color.Gray
End Sub


این کد فعلا درست کار می کنه
ولی شما متوجه می شید که این رنگ ها رو ثابت نمی خواید و ممکنه تو یه جایی یه ست رنگ و تو یه جایی یه ست رنگ دیگه نیاز باشه
در نتیجه میاید برای یوزر کنترل دو تا خصوصیت جدید تعریف می کنید و کد ها رو بر حسب اونا می نویسید

Public Property ActiveBackColor As Color = Color.Yellow
Public Property DeactiveBackColor As Color = Color.Gray


Private Sub Form1_GotFocus(sender As Object, e As System.EventArgs) Handles Me.GotFocus
Me.BackColor = ActiveBackColor
End Sub

Private Sub Form1_LostFocus(sender As Object, e As System.EventArgs) Handles Me.LostFocus
Me.BackColor = DeactiveBackColor
End Sub

(تا حالا تمام کد ها داخل یوزر کنترل بود)
حالا چطور از این دو خصوصیت جدید اسفاده کنیم؟
روش اول:
وقتی یوزر کنترل رو روی فرم انداختیم پنجره Properties رو باز و این دو تا خصوصیت رو تنظیم می کنیم (مثل کنترل های عادی)
روش دوم:
این دو خاصیت رو بر حسب نیاز داخل کدمون تغییر می دیم (این کد داخل فرم نوشته میشه)

UserControl1.ActiveBackColor=Color.Red