سلام دوستان لطفا كد ارتباط يك فرم با فرمي ديگر در سي شارپ رو برام بنويسد.براي مثال اگه روي يه باتن در فرم يك كليك كردم برم به فرم دو .مرسي دوستان
Printable View
سلام دوستان لطفا كد ارتباط يك فرم با فرمي ديگر در سي شارپ رو برام بنويسد.براي مثال اگه روي يه باتن در فرم يك كليك كردم برم به فرم دو .مرسي دوستان
سلام.
کد زیر رو تو رویداد کلیک باتن قرار بده:
کد:Form2 MF = new Form2();
MF.Show();
سلام
اگه بخوايم با باز شدن فرم2 فرم 1 مخفي بشه و با بستن فرم2 فرم1 نمايش داده بشه بايد چه كار كنيم
تو رویداد Load فرم دومی بنویس form1.hide
و تو رویداد FormClosing فرم دومی بنویس form1.show
سلام
من اين كار رو با this.hide انجام دادم ول با form1.hide اين كار انجام نميشه
اصلا برنامه form1 نميشناسه
در واقع سؤال من اينه كه بدونم تو برنامه من this به جه اشاره ميكنه
نقل قول:
this به همون فرمی که شما داخلش هستید اشاره میکنه .
موفق باشی
سلامنقل قول:
من مي خوام بدونم كه اسم اون فرمي كه this به آن اشاره مي كند چيست
يعني و قتي من مي نويسم this.hide به جاي this چه بنويسم كه همون كار انجام بشه
با تشكر
وقتی کدی به Top Control اشاره میکنه ( فرق نداره ، چه فرم، چه یوزر کنترل ) در سی شارپ با This و در وی بی با Me باید مورد اشاره قرار بگیره. وگرنه با خطای کامپایلر مواجه خواهید شد.نقل قول:
فکر کنم اگر This هم نباشه مشکلی پیش نیاد.فقط کافی بنویسی hide
سلام
با تشكر از نظرات دوستان ولي من هنوز به جواب نرسيدم
من مي خوام بدونم تو رويداد formclosed فرم 2 چي بنويسم كه فرم1 رو مجددا باز كنه
با form1.show امتحان كردم نشد. show رو نوشتم باز هم جواب نداد
سلامنقل قول:
توی فرم 1 یک باتن بزار و دستور زیر را بهش بده
حالا توی رویداد FormClosing فرم 2 هم دستور زیر را بنویسکد:Form2 frm = new Form2();
frm.Show();
this.Hide();
موفق باشیکد:Form1 frm = new Form1();
frm.Show();
سلامنقل قول:
ممنون از جوابت ولي با اينكار ما يك فرم new مي كنيم كه با خروج از آن فرم از برنامه خارج نمي شويم
من مي خواهم همان فرمي را كه در مرحله اول مخفي كردم نمايش بدم
خيلي ممنون
خوب در باتنی که دوستمون در فرم 1 فرمودن این شکل بنویس ببین کارت راه می افته:
کد:
this.Hide();
Form1 frm = newForm1();
frm.ShowDialog();
this.Show();
سلام دوست من شما هنوز جواب نگرفتی؟نقل قول:
بالای فرم 2 بنویس:
داخل FormClosing فرم 2 بنویس :کد:public Form1 MainForm1;
حالا داخل باتون فرم 1 بنویس:کد:MainForm1.Show();
اگه سوالی داشتی درخدمتیم.کد:Form2 F2 = new Form2();
this.Hide();
F2.MainForm1 = this;
F2.Show();
قربانت علی:11:.
سلام
از جوابت خيلي ممنون
مشكلم حل شد اما دو تا سؤال دارم
اول اينكه public Form1 MainForm1; چي كار مي كنه
دوم اينكه F2.MainForm1 = this; اين چي كار مي كنه
سوم اينكه بجاي this(اشاره گر به فرم جاري) مي تونيم چي بنويسيم
سلام
از جوابت خيلي ممنونم مشكل من با جواب علي آقا(hamishebahar) حل شد ولي اگه دوست داري كمي در مورد راه حل شما بحث كنيم
بزرگترين مشكل راه حل شما اينه كه ازshowdialog استفاده مي كنيد كه در اين صورت ما به فرم2 دسترسي نداريم پس نمي تونيم فرم 2 رو ببنديم
دوم اينكه شما براي رويداد formclosed هيچ پيشنهادي نداديد
نكته جالب جواب شما كه من نمي تونم اونو تحليل كنم اينه كه با بستنfrm فرم1 رو كه مخفي كرده بوديم باز ميشه
منتظر جوابت هستم
جواب سوال اولت: وقتی ما یک فرم رو از نوع Public تعریف میکنیم به فارسی بگم یعنی این فرم رو میتونی در فرم دوم استفاده کنی اگه دوست نداری این کار عملی بشه اونو به جای Public به Private تغییر بده.نقل قول:
سوال دوم:F2 یعنی فرم دومی که تعریف شده و Mainform1 یعنی فرم اصلی برنامه یعنی فرم اول که وقتی برابر This قرار میدید (This یعنی فرم جاری یا همین فرم) Mainform1 میشه this یعنی فرم جاری.
اگه بازم سوال یا مشکلی داشتی در خدمتیم.