PDA

View Full Version : نمایش یا عدم نمایش یک کنترل در فرم والد



vahdani_d
پنج شنبه 27 بهمن 1390, 16:49 عصر
سلام
دوتا فرم دارم که یکی والده و دیگری فرزند این قست درست شده اما حالا میخوام در فرم والد یک کنترل مثل لیبل یا دکمه یا ... را ویزیبلش رو از طریق فرم فرزند کنترل کنم که نمایش داده بشه یا نشه
نمیدونم کنترل ابزار یک فرم والد از راه فرم فرزند (یا برعکس) با چه کدی انجام میشه میشه لطفا راهنمایی کنید ؟
که به ابزار والد چطور دسترسی پیدا کنم و اونهارو مدیریت کنم باتشکر

mrbm_2007
پنج شنبه 27 بهمن 1390, 20:10 عصر
در فرم فرزند اینجوری بنویس
(this.ParentForm as Form1).label1.Visible = false;
فقط توجه کن که Form1 در کد بالا نام کلاس فرم والده

shadi khanum
پنج شنبه 27 بهمن 1390, 23:36 عصر
با فرض اینکه اسم فرم والد form1 باشه با این کد میتونید به فرم والد دسترسی داشته باشید..

((Form1)this.ParentForm).lable1.text="newText";

mrbm_2007
جمعه 28 بهمن 1390, 01:06 صبح
با فرض اینکه اسم فرم والد form1 باشه با این کد میتونید به فرم والد دسترسی داشته باشید..

((Form1)this.ParentForm).lable1.text="newText";


فکر کنم منم همین رو گفتم نیازی به تکرار نبود:متعجب:

vahdani_d
جمعه 28 بهمن 1390, 09:43 صبح
ممنونم دوستان اما زیر label 1 خط آبی رنگ میکشه و کا نمیکنه ؟؟؟

mrbm_2007
جمعه 28 بهمن 1390, 10:25 صبح
ممنونم دوستان اما زیر label 1 خط آبی رنگ میکشه و کا نمیکنه ؟؟؟

مطمئنی اسم کنترل مورد نظرت همین label1 هست؟ این کنترل باید توی فرم والد تعریف شده باشه و تایپ فرم والد هم باید Form1 باشه
اگر مشکلت حل نشد کدت رو بذار اینجا یا یه نمونه کوچیک بذار تا اصلاحش کنیم

vahdani_d
جمعه 28 بهمن 1390, 12:02 عصر
http://s1.picofile.com/file/7303201177/err4.jpg


private void button1_Click(object sender, EventArgs e)
{

((defalt)this.ParentForm).label1.text = "newText";
}

توی فرم والد لیبل 1 دارم
ی سوال من توی فرم والد موقعی که میخواد فرزند باز بشه این کد رو زدم

chpass chp = new chpass();
chp.MdiParent = this;
chp.Show();
اما توی فرم فرزند هیچ کدی ندارم که نشون بده والدش چیه و کیه همین کدی که بالا نوشتم کافیه ؟ یا توی فرم فرزند چیزی باید اضافه شه ؟

mrbm_2007
جمعه 28 بهمن 1390, 12:05 عصر
آهان فهمیدم موضوع چیه
سطح دسترسی
سطح دسترسی label1 رو باید بذاری روی Internal یا Public

mrbm_2007
جمعه 28 بهمن 1390, 12:07 عصر
برای تغییر سطح دسترسی توی properties از Modifiers استفاده کن یا اینکه خودت دستی توی کد Designer تغییرش بده