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

نام تاپیک: چک کردن تاریخ شمسی

  1. #1
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    قم
    پست
    127

    Question چک کردن تاریخ شمسی

    تو برنامه ام می خوام اگه دکمه save زده شده چک کنه فیلد مربوط به تاریخ درست واردشده یا نه برای این کار چکار می تونم بکنم؟

  2. #2
    کاربر دائمی آواتار Xcalivorse
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    Kernel32.dll
    پست
    411

    نقل قول: چک کردن تاریخ شمسی

    منظورتون فرمت تاریخ یا خود تاریخ ؟

  3. #3
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    قم
    پست
    127

    نقل قول: چک کردن تاریخ شمسی

    یعنی تاریخ رو غلط تایپ نکرده باشه مثلا 54/15/1368 یا 31/12/5454

  4. #4
    کاربر دائمی آواتار tthenry14plus
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    Tehran
    پست
    218

    نقل قول: چک کردن تاریخ شمسی

    برای دریافت تاریخ از طرف کاربر بجای استفاده از TextBox، از MaskedTextBox استفاده کنید و پراپرتی Mask او رو برابر با Short date قرار دهید، حال ورود تاریخ باید مطابق با اصول باشد اما برای چک کردن درستی ارقام وارد شده کد زیر را برای دکمه Save بنویسید :

    if (
    int.Parse(maskedTextBox1.Text.Substring(0, 2)) > 31 ||
    int.Parse(maskedTextBox1.Text.Substring(0, 2)) < 1 ||
    int.Parse(maskedTextBox1.Text.Substring(3, 2)) > 12 ||
    int.Parse(maskedTextBox1.Text.Substring(3, 2)) < 1 ||
    int.Parse(maskedTextBox1.Text.Substring(6, 4)) > 2000 ||
    int.Parse(maskedTextBox1.Text.Substring(6, 4)) < 1300
    )
    MessageBox.Show("خطا در ورود تاریخ ...");

  5. #5
    کاربر دائمی آواتار linux
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    تهران
    پست
    2,313

    نقل قول: چک کردن تاریخ شمسی

    نقل قول نوشته شده توسط tthenry14plus مشاهده تاپیک
    برای دریافت تاریخ از طرف کاربر بجای استفاده از TextBox، از MaskedTextBox استفاده کنید و پراپرتی Mask او رو برابر با Short date قرار دهید، حال ورود تاریخ باید مطابق با اصول باشد اما برای چک کردن درستی ارقام وارد شده کد زیر را برای دکمه Save بنویسید :

    if (
    int.Parse(maskedTextBox1.Text.Substring(0, 2)) > 31 ||
    int.Parse(maskedTextBox1.Text.Substring(0, 2)) < 1 ||
    int.Parse(maskedTextBox1.Text.Substring(3, 2)) > 12 ||
    int.Parse(maskedTextBox1.Text.Substring(3, 2)) < 1 ||
    int.Parse(maskedTextBox1.Text.Substring(6, 4)) > 2000 ||
    int.Parse(maskedTextBox1.Text.Substring(6, 4)) < 1300
    )
    MessageBox.Show("خطا در ورود تاریخ ...");
    با روش شما تاریخ های زیر مورد قبول هست
    1376/12/31
    1387/9/31
    و ...

  6. #6
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    قم
    پست
    127

    نقل قول: چک کردن تاریخ شمسی

    روش درستش رو پیدا کردم برای دوستان هم گذاشتم تا استفاده کنند.

    try
    {
    string[] sss = newstring[3];
    sss = mtxtTSokonat.Text.Split(
    '/');
    System.Globalization.
    PersianCalendar pc = new System.Globalization.PersianCalendar();
    pc.ToDateTime(
    Convert.ToInt16(sss[0]), Convert.ToInt16(sss[1]), Convert.ToInt16(sss[2]), 0, 0, 0, 0);
    MessageBox.Show("Date is current.");
    }
    catch
    {
    lbl1.Visible =
    true;
    lbl1.ForeColor =
    Color.Red;
    lbl1.Text =
    "Date is mistake.";
    System.Media.
    SystemSounds.Beep.Play();
    mtxtTSokonat.Focus();
    mtxtTSokonat.SelectAll();
    }

  7. #7
    کاربر دائمی آواتار tthenry14plus
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    Tehran
    پست
    218

    نقل قول: چک کردن تاریخ شمسی

    پیش خودم گفتم مسئله اون نیست، دیگه خودتون اون کارو انجام میدید ...
    با اضافه کردن دوتا شرط دیگه مشکلش حل میشه :

    if (
    (int.Parse(maskedTextBox1.Text.Substring(3, 2))> 6 &&
    int.Parse(maskedTextBox1.Text.Substring(0, 2)) > 30) ||
    int.Parse(maskedTextBox1.Text.Substring(0, 2)) > 31 ||
    int.Parse(maskedTextBox1.Text.Substring(0, 2)) < 1 ||
    int.Parse(maskedTextBox1.Text.Substring(3, 2)) > 12 ||
    int.Parse(maskedTextBox1.Text.Substring(3, 2)) < 1 ||
    int.Parse(maskedTextBox1.Text.Substring(6, 4)) > 2000 ||
    int.Parse(maskedTextBox1.Text.Substring(6, 4)) < 1300
    )
    MessageBox.Show("خطا در ورود تاریخ ...");

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

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