PDA

View Full Version : آموزش: طریقه ساخت UserControl و کامپوننت توسط آن و آشنایی با آن



roomusic
دوشنبه 20 خرداد 1392, 00:39 صبح
سلام دوستان
این تاپیک رو برای این درست کردم که شاید بعضی ها از جمله خودم روش کار با UserControl و ساخت کامپوننت رو ندونن
اگه کسی سوالی یا آموزشی داره حتما" بزاره تا همه بتونن ازش استفاده کنن

طریقه ایجاد UserControl :
روی پروژتون راست کلیک کنید => روی add => روی User Control
105338
یه جورایی مثل یه کلاس میمونه ولی میشه توش طراحی هم انجام داد

complexcoding
دوشنبه 20 خرداد 1392, 01:05 صبح
سلام هم وطن . منم رشتيم :قلب: ولي قزوين مي نشينيم.
نكاتي كه من مي تونم كمك كنم . user control ايجاد شده تا در اين محيط با تركيب كنترل هاي ديگر از قسمت ToolBox و اضافه كردن خصوصيات جديد كنترل مورد نياز رو بسازيم. اما اگر بخواهيم يك كنترل كاملا اختصاصي و جديد بسازيم بايد كلاس خودمون رو از كلاس Control مشتق كنيم.

roomusic
دوشنبه 20 خرداد 1392, 10:09 صبح
سلام هم وطن . منم رشتيم :قلب: ولي قزوين مي نشينيم.
نكاتي كه من مي تونم كمك كنم . user control ايجاد شده تا در اين محيط با تركيب كنترل هاي ديگر از قسمت ToolBox و اضافه كردن خصوصيات جديد كنترل مورد نياز رو بسازيم. اما اگر بخواهيم يك كنترل كاملا اختصاصي و جديد بسازيم بايد كلاس خودمون رو از كلاس Control مشتق كنيم.
سلام هم شهری:لبخند: ، خوشحالم که همشهریمو پیدا کردم
خیلی ممنون از پاسخ و کمکت
ولی یه مشکلی که دارم اینه:
من یه int تعریف کردم و با کد زیر مقدار رو تو فرمی که از Use Control استفاده میکنم رو میتونم بگیرم یعنی قسمت مقدار دهی تو Properties کنترلی که ساختم وجود داره و لی هر چی بهش مقدار میدم قبول نمیکنه و مقدار رو دوباره به 0 تغییر میده

int flag;
public int fff
{
get { return (flag); }
set
{


}
}

اگه میشه یه راهنمایی هم برای قسمت Get بکنید
اگه میشه کمک کنید ممنونتون میشــــــــــــــــــــــ ــــم:بوس:

danialafshari
دوشنبه 20 خرداد 1392, 11:08 صبح
سلام
set رو که تنظیم نکردید بخاطر همین تغییری نمیده یا به اصطاح set نمیکنه
فکر کنم به شکل زیر تغییرش بدی جواب میگیری:
private static int flag=0;
public int fff
{
get
{
return flag;
}
set
{
flag = value;
}
}
موفق باشی

roomusic
دوشنبه 20 خرداد 1392, 12:01 عصر
سلام
set رو که تنظیم نکردید بخاطر همین تغییری نمیده یا به اصطاح set نمیکنه
فکر کنم به شکل زیر تغییرش بدی جواب میگیری:
private static int flag=0;
public int fff
{
get
{
return flag;
}
set
{
flag = value;
}
}
موفق باشی

سلام دوست عزیز ، خیلی ممنون از پاسخ شما
یه چیز دیگه!
من یهPictureBox تو UserControl دارم که قابلیت جابجایی ( Location) رو داره
حلا من میخوام یه رویداد به رویداد های user Control اضافه کنم که تو فرمم بتونم با استفاده از اون رویداد بفهمم هر وقت که PictureBox من Change Location شد یه کاریو انجام بدم
یا این که ChangeValue ، flag شد یه کاری رو تو فرمم انجام بدم
یه جورایی شبیه رویداد های Changevalue یا Scroll برای TrackBar میخوام
اگه میشه راهنمایی کنید
ممنونتون میشم واقعا"

complexcoding
دوشنبه 20 خرداد 1392, 17:45 عصر
ببين همشهري roomusic يه ويديو ساخت يوزر كنترل آقاي كياني داره تو سايت يه سرچ بزن ساخ يك يوزر كنترل مشتي رو ياد داده با متدهاي set و get كه بعدش dll مي شه و خصوصياتش تو properties هم اضافه مي شه. :قلب: