PDA

نسخه کامل مشاهده نسخه کامل : نمایش فرم در سی شارپ ( سوییچ کردن)



سونامی
27-09-2010, 18:05
من میخواهیم نحوه سوییچ کردن فرم ها رو تو سی شارپ بدونم

با ویبی دات نت و وی بی 6 فرق میکنه .

مثلا با یک دگمه فرم 2 نمیش و فرم 1 محو شه و با یک دگمه دیگه عکس این عمل صورت بگیرد

M E H D I
27-09-2010, 18:52
من میخواهیم نحوه سوییچ کردن فرم ها رو تو سی شارپ بدونم

با ویبی دات نت و وی بی 6 فرق میکنه .

مثلا با یک دگمه فرم 2 نمیش و فرم 1 محو شه و با یک دگمه دیگه عکس این عمل صورت بگیرد

دو تا فرم Form1 و Form2 اگه داشته باشیم، از هر کدوم به اون یکی اگه بخوایم دکمه داشته باشه، به این صورت عمل می کنیم:
برای فرم اول که فرم دوم رو فراخوانی کنه:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

فقط نکته ش اینه که وقتی از فرم اول می خواین فرم دوم رو نشون بدین، فرم دوم به عنوان Child این فرم در نظر گرفته میشه. یعنی اگه فرم اول رو به جای اینکه Hide کنین، Close کنین، فرم دوم هم خود به خود بسته میشه. اما از فرم دوم اینطور نیست.

ضمنا اگه فرم دوم رو ببندین متوجه میشین که برنامه به طور کامل بسته نمیشه. می تونین برای بسته شدن کامل روی Event بسته شدن فرم، Application.Exit() کنین.

سونامی
27-09-2010, 23:31
دادا ارور میده که :دی از کدتون

maxeemo
29-09-2010, 23:47
سلام.

کد مهدی جان مشکلی نداره و نباید ارور بده.

البته با برداشتی که من از پست اول دارم، نظرم اینه؛ که هر دو فرم رو باید در یک کلاس تعریف کنید تا بحث Child و Parent از بین بره و بتونید راحت بین فرم ها سوئیچ کنید.


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

تو رویداد button_Click دکمه های مورد نظر هم همون کدی که مهدی جان نوشتن؛


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

و بر عکس. اگر یکی از فرم ها بسته بشه، دیگه این کد جواب نمیده و ارور میده. یکی از راه ها اینه که با تعریف یک فلگ از بسته شدن عادی فرم ها (با کلیک روی X) جلوگیری کنید.

=> هنگام نوشتن کدها، چون فرم ها در کلاس دیگه ای تعریف شدن، باید ارجاعات مربوط رو لحاظ کنید.



:40::40::40::40::40:

fateme_nikrou
12-12-2012, 12:07
سلام
چرا روی فرم دوم نمیشه کنترلی گذاشت؟؟؟؟

ivioi2t3za
12-12-2012, 13:59
فرم از چه نوع شی داده هست؟؟؟

senaps
12-12-2012, 14:07
چرا روی فرم دوم نمیشه کنترلی گذاشت؟؟؟؟


یعنی چی؟! چرا نمیشه؟! اروری که میگیری رو نشون بده...

fateme_nikrou
13-12-2012, 10:16
سلام
مشکل برنامم حل شد:n02:
چون به جای form2 نوشته بودم form، فرم جدیدی که تولید میکرد یک فرم خالی بود نه اون فرمی که من طراحی کرده بودم.