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

نام تاپیک: بستن تمامی فرم های باز به جز یک فرم خاص

  1. #1
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,961

    Question بستن تمامی فرم های باز به جز یک فرم خاص

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


    LoginFrm _LoginFrm = new LoginFrm();
    _LoginFrm.Show();
    List<Form> openForms = new List<Form>();
    foreach (Form f in Application.OpenForms)
    openForms.Add(f);
    foreach (Form f in openForms)
    {
    if (f.Name != "LoginFrm")
    f.Close();
    }


    کجای کارم اشتباهه؟

  2. #2
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,961

    نقل قول: بستن تمامی فرم های باز به جز یک فرم خاص

    اشکال کارمو پیدا کردم. گفتم بگم شاید برا بقیه هم لازم شد

    توی رویداد کلوزینگ فرم اصلییم از

    Application.Exit();

    استفاده کرده بودم که باعث خروج از برنامه میشد کد کامل رویداد به شکل زیر بود

    private void MainFrm_FormClosed(object sender, FormClosedEventArgs e)
    {
    HistoryDA _HistoryDA = new HistoryDA();
    _HistoryDA.Logined(this.lblPId.Text + this.lblIp.Text, "LOGOUT");
    OnlineUserDA _OnlineUserDA = new OnlineUserDA();
    _OnlineUserDA.Delete(lblPId.Text);
    Application.Exit();
    }


    که به صورت زیر اصلاح کردم.


    private void MainFrm_FormClosed(object sender, FormClosedEventArgs e)
    {
    bool locking=true;
    List<Form> openForms = new List<Form>();

    foreach (Form f in Application.OpenForms)
    openForms.Add(f);

    foreach (Form f in openForms)
    {
    if (f.Name == "LoginFrm")
    locking = false;
    }

    if (locking)
    {
    HistoryDA _HistoryDA = new HistoryDA();
    _HistoryDA.Logined(this.lblPId.Text + this.lblIp.Text, "LOGOUT");
    OnlineUserDA _OnlineUserDA = new OnlineUserDA();
    _OnlineUserDA.Delete(lblPId.Text);
    Application.Exit();
    }
    else
    {
    HistoryDA _HistoryDA = new HistoryDA();
    _HistoryDA.Logined(this.lblPId.Text + this.lblIp.Text, "LOGOUT");
    OnlineUserDA _OnlineUserDA = new OnlineUserDA();
    _OnlineUserDA.Delete(lblPId.Text);
    }
    }


    شاید روشم بهینه و اصولی نبود. که ممنون میشم اساتید موارد مورد نیاز رو بگن.

  3. #3
    کاربر دائمی آواتار parvizwpf
    تاریخ عضویت
    بهمن 1390
    محل زندگی
    TEH
    پست
    2,919

    نقل قول: بستن تمامی فرم های باز به جز یک فرم خاص

    روی HashCode آبجکت ها هم یه مطالعه ای کنید. کمک میکنه

  4. #4
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,961

    نقل قول: بستن تمامی فرم های باز به جز یک فرم خاص

    نقل قول نوشته شده توسط parvizwpf مشاهده تاپیک
    روی HashCode آبجکت ها هم یه مطالعه ای کنید. کمک میکنه
    مطلب خاصی پیدا نکردم. اگه امکان داره لینکی معرفی کنید.

  5. #5
    کاربر دائمی آواتار parvizwpf
    تاریخ عضویت
    بهمن 1390
    محل زندگی
    TEH
    پست
    2,919

    نقل قول: بستن تمامی فرم های باز به جز یک فرم خاص

    در واقع هر ابجکتی در سی شارپ حاوی یک هش کد هست. شما وقتی کد مینویسید و جلوی آبجکت نقطه میزارید متدی میاد بنام GetHashCode();
    این کد برای هر آبجکت یونیک هست . چون معمولا استرینگ ها توی چک کردن، چیزهای مطمئنی نیستند میتونید بعنوان جایگزین از هش کد هر فرم استفاده کنید.

تاپیک های مشابه

  1. کش کردن فایل های سایت به جز یک فولدر با htaccess
    نوشته شده توسط mhemrg در بخش توسعه وب (Web Development)
    پاسخ: 1
    آخرین پست: جمعه 14 اسفند 1394, 02:26 صبح
  2. سوال: absolute کردن یک دیو نسبت به همه عناصر به جز یک دیو خاص
    نوشته شده توسط marasiali در بخش طراحی وب (Web Design)
    پاسخ: 0
    آخرین پست: پنج شنبه 14 خرداد 1394, 17:44 عصر
  3. سوال: پاک شدن تمام خط های تکست باز به جز بخش خواصی
    نوشته شده توسط c-sharp_South در بخش C#‎‎
    پاسخ: 1
    آخرین پست: پنج شنبه 23 آذر 1391, 19:22 عصر
  4. سوال: بستن تمامی فرم های باز
    نوشته شده توسط morteza@z در بخش VB.NET
    پاسخ: 3
    آخرین پست: سه شنبه 06 دی 1390, 16:22 عصر
  5. بستن همه پورت ها به جز یک پورت خاص
    نوشته شده توسط Parastoo7 در بخش C#‎‎
    پاسخ: 3
    آخرین پست: یک شنبه 22 آبان 1390, 09:05 صبح

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

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