PDA

View Full Version : سوال: در مورد باز کردن فرم child بر روی فرم وparents



amir_rtf
دوشنبه 19 مهر 1389, 10:15 صبح
دوستان عزیز ببخشید ممکنه سئوالم تکراری باشه;
برنامه من سه فرم داره 1-فرمparents
2-دو فرم child
کدی میخوام که فرم childرو روی هم باز کنه ولی هیچ وقت این فرمها زیر فرم اصلی parentsنیفته

با احترام:تشویق:

mahboube
دوشنبه 19 مهر 1389, 10:26 صبح
form ها يك خاصيت دارن topmost كه اگه true باشن هميشه رو نشون داده ميشن.
بعدشم فرمي كه mdiparrent ش فرم parrent‌ تعريف شده باشه هميشه روي parrent ش باز ميشه حتي وقتي مينيممه.

navidiran
دوشنبه 19 مهر 1389, 11:14 صبح
توی فرم Parent بنویس:


private void ChildBtn1_Click(object sender, EventArgs e)
{
Form ChildObject1 = new FrmChild1();
ChildObject1.ShowDialog();
}
private void ChildBtn2_Click(object sender, EventArgs e)
{
Form ChildObject2 = new FrmChild2();
ChildObject1.ShowDialog();
}

با این کد می تونی از فرم اصلی هر دو فرم فرزند رو بازکنی که فرزندان روی فرم اصلی باشن.
اگر منظورت چیز دیگری هست من متوجه نشدم!!!

amir_rtf
دوشنبه 19 مهر 1389, 14:37 عصر
توی فرم Parent بنویس:


privatevoid ChildBtn1_Click(object sender, EventArgs e)
{
Form ChildObject1 = new FrmChild1();
ChildObject1.ShowDialog();
}
privatevoid ChildBtn2_Click(object sender, EventArgs e)
{
Form ChildObject2 = new FrmChild2();
ChildObject1.ShowDialog();
}

با این کد می تونی از فرم اصلی هر دو فرم فرزند رو بازکنی که فرزندان روی فرم اصلی باشن.
اگر منظورت چیز دیگری هست من متوجه نشدم!!!

با .ShowDialogهر دو فرم هم زمان باز نمیشوند

ctrl+alt+del
دوشنبه 19 مهر 1389, 15:06 عصر
من قبلاً همچین کاری رو انجام دادم

فرم اصلی رو باید براش خاصیت MdiParrent ش رو true کنی .

بعد وقتی فرم های child رو میخوای اجرا کنی، یه شیء ازش میسازی و بعد قبل از اینکه show کنی، خاصیت زیر رو باید اعمال کنی :

start//

frmChild1 child1=new frmChild1();
child1.mdiParrent=this;
child1.show();
//end

برای فرم child بعدی هم همین کار رو باید انجام بدی.

موفق باشی. :)