PDA

View Full Version : سوال: اجرا کردن یک فرم در Load فرم دیگر



pishraft
دوشنبه 15 مهر 1392, 10:48 صبح
سلام دوستان
من میخوام یک فرم3 رو زمانی که فرم 2 باز میشه بیارم
تو رویداد Load فرم 2 نوشتم ولی بعد اجرا اول فرم 3 باز میشه
من میخوام فرم 2 باز شه بعدش فرم 3 روی فرم 2 بیاد
میشه مثل همیشه راهنمایی کنید
ممنون

pedram.11
دوشنبه 15 مهر 1392, 11:00 صبح
سلام خب در رویداد لود فرم اینکارو نکن در قسمت شروع تعریف اون کلاس یعنی مثلا اگه فرم2 داری اینجا اینکارو کن:
Public Form2()
{
InitializeComponent();
Form3 frm3 = new Form3();
frm3.ShowDialog();
}

pishraft
سه شنبه 16 مهر 1392, 10:39 صبح
مرسی ولی اینم مثل قبلی کار میکنه
من میخوام فرم 2 نمایش داده شه بعد فرم 3 بیاد رو فرم 2 نشون داده شه

erfan_urchin
سه شنبه 16 مهر 1392, 16:11 عصر
سلام دوستان
من میخوام یک فرم3 رو زمانی که فرم 2 باز میشه بیارم
تو رویداد Load فرم 2 نوشتم ولی بعد اجرا اول فرم 3 باز میشه
من میخوام فرم 2 باز شه بعدش فرم 3 روی فرم 2 بیاد
میشه مثل همیشه راهنمایی کنید
ممنون
خب شما میتونی دقیقا برعکس این کارو انجام بدی تا به هدفت برسی
یعنی از فرم1 ، فرم3 رو فراخوانی کن بعد تو Load فرم3 ، فرم 2 رو فراخوانی کن تا اول فرم 2 رو نشون بده بعد فرم 3 رو
به این میگن یه ترفند زیبا :لبخند: :بامزه:

pedram.11
سه شنبه 16 مهر 1392, 18:34 عصر
مرسی ولی اینم مثل قبلی کار میکنه
من میخوام فرم 2 نمایش داده شه بعد فرم 3 بیاد رو فرم 2 نشون داده شه

سلام ببخشید من عکسشو متوجه شدم، یه راه حل، توی رویداد Shown اینکارو کنید:
bool LoadedOnce;
private void Form1_Shown(object sender, EventArgs e)
{
if (!LoadedOnce)
{
LoadedOnce = true;
Form3 frm3 = new Form3();
frm3.ShowDialog();
}
}