PDA

View Full Version : سوال: چگونگی باز کردن Box بصورت Modal



pedramfj
پنج شنبه 08 مهر 1389, 18:58 عصر
سلام
فکر کنید دوتا فرم داریم وقتی فرم 1 فعال است از طریق فرم 1 ,فرم 2 را اجرا میکنم .(فرم2 بر روی فرم 1 نمایش داده میشود).
چگونه کاری کنم که زمانی که فرم2 فعال است , نتوان فرم 1 را که در پشت قرار دارد انتخاب کرد.تا زمانی که فرم2 بسته شود؟؟
تشکر

mehdi.mousavi
پنج شنبه 08 مهر 1389, 19:04 عصر
سلام فکر کنید دوتا فرم داریم وقتی فرم 1 فعال است از طریق فرم 1 ,فرم 2 را اجرا میکنم .(فرم2 بر روی فرم 1 نمایش داده میشود).چگونه کاری کنم که زمانی که فرم2 فعال است , نتوان فرم 1 را که در پشت قرار دارد انتخاب کرد.تا زمانی که فرم2 بسته شود؟؟ تشکر


سلام.
برای باز کردن فرم دوم، احتمالا شما از متود Show استفاده کرده اید. این متود پنجره مورد نظر رو بصورت Modeless باز میکنه (که اونی نیست که شما میخواهید). برای اینکه پنجره بصورت Modal باز بشه، از متود ShowDialog استفاده کنید و بعنوان پارامتر اول، reference به فرم 1 رو پاس کنید. بدین ترتیب تا پنجره دوم بسته نشه پنجره اول در دسترس نخواهد بود.

موفق باشید.

pedramfj
پنج شنبه 08 مهر 1389, 19:33 عصر
سلام. و بعنوان پارامتر اول، reference به فرم 1 رو پاس کنید. بدین ترتیب تا پنجره دوم بسته نشه پنجره اول در دسترس نخواهد بود.

دوست عزیز ممنون.ولی اینجا را متوجه نشدم. اگر امکان داره بگید تو فرم1 برای نمایش فرم2 چی مینویسید؟؟؟؟:خجالت:

mehdi.mousavi
پنج شنبه 08 مهر 1389, 19:37 عصر
دوست عزیز ممنون.ولی اینجا را متوجه نشدم.

سلام.
با فرض به اینکه شما از فرم اول دومی رو باز خواهید کرد، this رو هنگام فراخوانی بعنوان پارامتر به ShowDialog بدید (اینطوری Parent فرم دوم فرم اول در نظر گرفته میشه):

Form2 frm = new Form2();
frm.ShowDialog(this);


موفق باشید.