PDA

View Full Version : مبتدی: کمک فوری درباره فعال و غیر فعال کردن فرم ها با Button



farman-h
شنبه 13 شهریور 1389, 17:08 عصر
با سلام.
من در فرم1 دو تا دگمه دارم و میخوام وقتی دگمه1 رو زدم بعضی Textbox , combobox, Button رو فرم های 2 و3و4برام فعال و بعضی های دیگه هم غیرفعال بشه.

com_eng_abasszadeh
شنبه 13 شهریور 1389, 17:56 عصر
با سلام.
من در فرم1 دو تا دگمه دارم و میخوام وقتی دگمه1 رو زدم بعضی Textbox , combobox, Button رو فرم های 2 و3و4برام فعال و بعضی های دیگه هم غیرفعال بشه.

سلام.
تمامی کنترل ها یک خاصیت دارن به نام Modifiers . برای هر کنترل که میخوای خاصیت های اون رو در فرم های دیگه کنترل کنی در حالت Public قرار میدی.
مثلا شما چندتا کنترل در فرم 2 داری و میخوای در فرم 1 حالت های اون را تغییر بدی.
توی فرم 2 میری و اون کنترل ها رو در حالت Public میذاری.
بعد توی فرم1 اینجوری کد مینویسی:
Form2.textbox1.enable=true

mmd2009
شنبه 13 شهریور 1389, 17:59 عصر
با سلام.

روش دوستمون com_eng_abasszadeh (http://www.barnamenevis.org/forum/member.php?u=112758) عملی هست ولی اصولی نیست.

com_eng_abasszadeh
شنبه 13 شهریور 1389, 18:15 عصر
با سلام.

روش دوستمون com_eng_abasszadeh (http://www.barnamenevis.org/forum/member.php?u=112758) عملی هست ولی اصولی نیست.
شما راهی دارید بفرمایید.ما هم یاد میگیریم.

javad_r_85
شنبه 13 شهریور 1389, 18:47 عصر
سلام.
تمامی کنترل ها یک خاصیت دارن به نام Modifiers . برای هر کنترل که میخوای خاصیت های اون رو در فرم های دیگه کنترل کنی در حالت Public قرار میدی.
مثلا شما چندتا کنترل در فرم 2 داری و میخوای در فرم 1 حالت های اون را تغییر بدی.
توی فرم 2 میری و اون کنترل ها رو در حالت Public میذاری.
بعد توی فرم1 اینجوری کد مینویسی:
Form2.textbox1.enable=true

سلام
پاسخ دوستمون هم عملیه هم اصولی متغییر که نیست براش پروپرتی بنویسیم ..کنترله

Mohandes2009
شنبه 13 شهریور 1389, 19:38 عصر
راه اینه در فرم 1 یه شی از فرم دو صدا بزنی و از این طریق دستیابی پیدا کنی به کنترل های فرم 2 و enable آنهارا غیر فعال کنی!!

ali_autumnal
شنبه 13 شهریور 1389, 19:38 عصر
سلام
توقسمت program.cs متغیرهایی از نوع bool تعریف کن و در زمانهای مورد نیاز مقادیر آنها رو تغییر بده و در زمان لود فرم ها این مقدارها رو چک کن. به این شکل در اونجا تعریف کن "فقط رنگ قرمز":




public static bool boolUserLevel = false;
[STAThread]
// static void Main()
// {
// Application.EnableVisualStyles();
// Application.SetCompatibleTextRenderingDefault(fals e);
// Application.Run(new fmain ());
// }


حالا مثلا از فرم 1 میخوایم برم به فرم 2 و میخواهیم که لیبل 1 فعال یا غیر فعال باشه:
به این صورت کد رو در لود فرم 2 قرار میدیم:




label1.Enabled = Program.boolUserLevel;

موفق باشید
علی پاییزی

Sajjad.Aghapour
شنبه 13 شهریور 1389, 19:40 عصر
سلام
پاسخ دوستمون هم عملیه هم اصولی متغییر که نیست براش پروپرتی بنویسیم ..کنترله

به هیچ عنوان اصولی نیست.درباره Encapsulation مطالعه کنید

در این مورد زیاد بحث شده.نمونه اون مقاله ای هست که جناب کیانی درباره Objects Relationنوشته اند.

http://barnamenevis.org/forum/attachment.php?attachmentid=13638&d=1200233621