نمایش نتایج 1 تا 31 از 31

نام تاپیک: روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1

    Smile روش اصولی بستن فرم ها و فراخوانی فرم های دیگر

    با سلام

    غالبا اگر بخواهم فرمی رو close کنم و فرم بعدی رو فراخوانی کنم از این کد استفاده میکنم:


    this.Hide();
    Form2 f = new Form2();
    f.ShowDialog();
    this.Close();


    همیشه این کد منو به شک مینداخت که آیا فرم 1 بسته شد یا!!؟؟؟
    در حالی که همیشه معتقد بودم نه فرم 1 بسته نشده و فقط hide شده اما خودم را با کدهای اکثر دوستان قانع میکردم که این روش واقعا درسته!!!!!!!!!!!!!!!

    دیشب داشتم برنامه ای مینوشتم که یه پروسه زمان بری مشغول به کار بود. لازم بود فرم 1 در همان لحظه بسته بشه و فرم 2 اجرا بشه. وقتی دستور بالا رو نوشتم سرعت برنامه به طرز افتضاحی کاسته شد.!!!!!!!!!!

    اونجا بود که گفتم نه واقعا کد بالا فقط فرم رو hide میکنه. روش اصولی بستن فرم نیست.
    گشتم و کد زیر رو پیدا کردم.

    این تکه کد دقیقا فرم 1 رو همون لحظه می بنده و فرم 2 مجددا اجرا میشه.


    private void button1_Click(object sender, EventArgs e)
    {
    System.Threading.Thread mythread = new System.Threading.Thread(new System.Threading.ThreadStart(OpenNewFrom));
    mythread.Start();
    this.Close();

    }
    public static void OpenNewFrom()
    {

    Application.Run(new Form2 ());//Create an instance of your new form. No need to call show method.
    }
    }


    منبع:
    http://www.dotnetspider.com/forum/23...plication.aspx

    خواستم نظر دوستای دیگم رو بدونم؟
    موفق باشید.
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 06 مرداد 1395 در 19:03 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •