PDA

View Full Version : سوال: تغییر مشخصات کنترل های یک فرم توسط کلاس؟



30yamand
جمعه 14 خرداد 1395, 14:33 عصر
با سلام می خواستم بدونم که چطور میشه به وسیله یک کلاس جداگانه مشخصات یک کنترل در فرم رو تغییر داد؟( مثلاً تغییر رنگ یک لیبل)
می خوام توسط یک کلاس مشخصات کنترل ها رو تغییر بدم ، برای مثال میخوام اگر شرطم برقرار شد رنگ label تغییر کنه

mrprestige
جمعه 21 خرداد 1395, 20:08 عصر
با سلام می خواستم بدونم که چطور میشه به وسیله یک کلاس جداگانه مشخصات یک کنترل در فرم رو تغییر داد؟( مثلاً تغییر رنگ یک لیبل)
سلام دوست من وقتت بخیر ، برای اینکه بتونی از طریق Class به کنترل های Form ( بسته به اون نیازی که دارید ) این دوتا using استفاده کنید داخل Class یکی ( ;using System.Windows.Forms ) و ( ;using System.Drawing ) بعد این کد رو داخل کلاستون بنویسید

class Class1
{
public Label ColorLBL(Label s)
{
s.BackColor = Color.Aqua;
return s;
}
}



و موقع فراخوانی به این صورت بنویسید

var n = new Class1().ColorLBL(label1);


موفق و پیروز باشید .

ronix3
شنبه 22 خرداد 1395, 00:09 صبح
سلام دوست من وقتت بخیر ، برای اینکه بتونی از طریق Class به کنترل های Form ( بسته به اون نیازی که دارید ) این دوتا using استفاده کنید داخل Class یکی ( ;using System.Windows.Forms ) و ( ;using System.Drawing ) بعد این کد رو داخل کلاستون بنویسید

class Class1
{
public Label ColorLBL(Label s)
{
s.BackColor = Color.Aqua;
return s;
}
}



و موقع فراخوانی به این صورت بنویسید

var n = new Class1().ColorLBL(label1);


موفق و پیروز باشید .

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

mrprestige
شنبه 22 خرداد 1395, 18:01 عصر
سلام دوست عزیز بی ادبی نباشه این کدی که شما نوشتید از کلاس درخواست رنگ برای لیبل می کنه
طوری که بنده متوجه شدم ایشون نیاز به یک رویداد دارن که هر وقت شرطشون بر قرار شد رویداد اجرا بشه و در اون رویداد حالا هر کاری خواستند انجام بدند
سلام دوست من ، ممنون بابت یادآوری ، منظورت رو از این جمله متوجه نشدم "
از کلاس درخواست رنگ برای لیبل می کنه" مگه میشه از کلاس درخواست چیزی کرد؟؟؟ ، دوست من بزار برات از کلاس یه مثال بزنم شما فکر کنید دارید به مسافرتی میرید و میخواید لوازم شخصیتون رو هم با خودتون ببرید شما که نمیتونید دونه به دونه وسایل هاتون رو دستتون بگیرید با خودتون جابه جا کنید پس می آیید از ساک استفاده میکنید و وسایلاتون رو داخل اون میزارید حالا اینجا ساک حکم همون Class مارو داره و اون وسایل شخصی حکم کد هامون رو داره ، سوال من اینجاست آیا شما از ساک درخواست لوازم هاتون رو میکنید یا اینکه خودتون از داخل ساک وسایلتون رو برمیداری ؟؟؟ ، و نکته بعدی اینکه اون دوستمون از رویداد صحبتی نکردن و فقط فرمودن که میخوان از طریق کلاس به مشخصات کنترل دسترسی داشته باشن ( که حالا من اینجا با لیبل و تغییر رنگ اون مثال زدم ) و اگه بخوان از طریق کلاس به مشخصات کنترل دسترسی داشته باشن و راهش همینی هست که بنده نوشتم تازه میتونن شرط بزارن درصورت برقرای شرط شون کلاس مربوطه فراخوانی بشه . ولی اگه شما راه بهتری سراغ داری بسم الله ... بگو ما هم استفاده کنیم دوست من .

حالا باز اگه سوالی بود من درخدمتم

امیدوارم پیروز وموفق باشی .

ronix3
شنبه 22 خرداد 1395, 18:52 عصر
سلام دوست من ، ممنون بابت یادآوری ، منظورت رو از این جمله متوجه نشدم "
از کلاس درخواست رنگ برای لیبل می کنه
" مگه میشه از کلاس درخواست چیزی کرد؟؟؟ ، دوست من بزار برات از کلاس یه مثال بزنم شما فکر کنید دارید به مسافرتی میرید و میخواید لوازم شخصیتون رو هم با خودتون ببرید شما که نمیتونید دونه به دونه وسایل هاتون رو دستتون بگیرید با خودتون جابه جا کنید پس می آیید از ساک استفاده میکنید و وسایلاتون رو داخل اون میزارید حالا اینجا ساک حکم همون Class مارو داره و اون وسایل شخصی حکم کد هامون رو داره ، سوال من اینجاست آیا شما از ساک درخواست لوازم هاتون رو میکنید یا اینکه خودتون از داخل ساک وسایلتون رو برمیداری ؟؟؟ ، و نکته بعدی اینکه اون دوستمون از رویداد صحبتی نکردن و فقط فرمودن که میخوان از طریق کلاس به مشخصات کنترل دسترسی داشته باشن ( که حالا من اینجا با لیبل و تغییر رنگ اون مثال زدم ) و اگه بخوان از طریق کلاس به مشخصات کنترل دسترسی داشته باشن و راهش همینی هست که بنده نوشتم تازه میتونن شرط بزارن درصورت برقرای شرط شون کلاس مربوطه فراخوانی بشه . ولی اگه شما راه بهتری سراغ داری بسم الله ... بگو ما هم استفاده کنیم دوست من .

حالا باز اگه سوالی بود من درخدمتم

امیدوارم پیروز وموفق باشی .

من منظورم رو بد بیان کردم می دونم که کلاس چیه و چه کاری می کنه
منظورم این بود ک تو کدی که شما نوشتید لیبل رو به کلاس می دید و کلاس رنگش رو عوض می کنه و لیبل رو برمی گردونه ولی این دوستمون می خواستند تو کلاس یه اعمالی انجام بدن و در نتیجش اگه شرطی برقرار بود رنگ لیبل عوض بشه خواستم بگم باید یه رویداد تعریف بشه که وقتی اون شرط بر قرار شد اجرا بشه و رنگ لیبل در اون رویداد تغییر کنه

این کلاس
class c
{
public delegate void Ok(object e);

public event Ok OnOk;

public void Check( bool o)
{
if(o==true)
{
object e=new object();
if (OnOk!=null) OnOk(e);
}
}
}
این هم کد هایی که باید در فرم قرار بگیره
static c c1 = new c();
private void Form1_Load(object sender, EventArgs e)
{
c1.OnOk += new c.Ok(ok);
}
private void button4_Click(object sender, EventArgs e)
{
c1.Check ( true);
}

private void ok(object e)
{
label1.BackColor = Color.Green;
}
وقتی که شرط در کلاس برقرار بود رنگ لیبل عوض می شه

ronix3
شنبه 22 خرداد 1395, 19:05 عصر
کسی نبود راهنمایی کنه
آقا می خوام توسط یک کلاس مشخصات کنترل ها رو تغییر بدم ، برای مثال میخوام اگر شرطم برقرار شد رنگ label تغییر کنه

می تونید بسته به کاری که می خواید انجام بدید وید Check در کلاس و شرطی که توش هست رو تغییر بدید