PDA

View Full Version : ویزارد در سی شارپ



Ebrahim_Rayaneh
پنج شنبه 27 تیر 1387, 09:29 صبح
سلام
می خوام یه ویزارد درست کنم.یعنی 6 تا فرم دارم ، که در همه اونا دکمه هایی به نامهای بعدی و لغو وجود داره.اگه مثلا دکمه ی بعدی در فرم اول را کلیک کنم ، اولا فرم دوم به نمایش در بیاد و ثانیا فرم اول بسته شه.برای این کار در فرم اول بر روی دکمه ی بعدی دابل کلیک می کنم در رویداد کلیکش می نوسم :
form2 objForm2=new form2;
objForm2.show();
this.close();
با این کد برنامه کلا از حالت اجرا خارج می شه ،چرا؟
اگه بخوام در فرم 6 ام ، فرم 6 بسته شه و فرم یک اگه قبلا hide شده باشه ، چه می تونم فرم 1 رو با بسته شدن فرم 6 ظاهر کنم ؟

regbyte
پنج شنبه 27 تیر 1387, 21:56 عصر
فکر کنم بهتر باشه برای ویزارد بجای Form از UserControl ها استفاده کنید و اونا رو در یک فرم نمایش بدید.

sh_microsoft
پنج شنبه 27 تیر 1387, 22:11 عصر
سلام
می خوام یه ویزارد درست کنم.یعنی 6 تا فرم دارم ، که در همه اونا دکمه هایی به نامهای بعدی و لغو وجود داره.اگه مثلا دکمه ی بعدی در فرم اول را کلیک کنم ، اولا فرم دوم به نمایش در بیاد و ثانیا فرم اول بسته شه.برای این کار در فرم اول بر روی دکمه ی بعدی دابل کلیک می کنم در رویداد کلیکش می نوسم :
form2 objForm2=new form2;
objForm2.show();
this.close();
با این کد برنامه کلا از حالت اجرا خارج می شه ،چرا؟
اگه بخوام در فرم 6 ام ، فرم 6 بسته شه و فرم یک اگه قبلا hide شده باشه ، چه می تونم فرم 1 رو با بسته شدن فرم 6 ظاهر کنم ؟

سلام
برای اینکه بتونی از فرم یک وارد فرم دوم شوی باید از این دستور استفاده کنی :


form2 objForm2=new form2();
this.Hide();
objForm2.show();


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

molana alavi
جمعه 28 تیر 1387, 00:10 صبح
به کدی که برات نوشتم و در فایل ضمیمه گذاشتم یه نگاهی بنداز
شامل سه تا فورم هستش که دکمه های Next و Cancel و Pre رو دارن
به نظر من کار اصولی ساخت ویزارد اینجوری هستش
موفق باشی

razavi_university
جمعه 28 تیر 1387, 01:35 صبح
تمامی فرم های باز برنامه در Application.OpenForms قرار می گیرند می توانید با جستجو در آن فرم مورد نظرتون روShow و یا Close کنید