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

نام تاپیک: دریافت مقادیر روز، ماه و سال شمسی و قمری از کامپوننت BehComponents

  1. #1
    کاربر تازه وارد آواتار zzhkfa
    تاریخ عضویت
    مهر 1389
    محل زندگی
    قم
    پست
    73

    Question دریافت مقادیر روز، ماه و سال شمسی و قمری از کامپوننت BehComponents

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

    * تاریخ روز: مثلا 1399/6/3
    * نام روز: جمعه
    * نام ماه: شهریور
    * تاریخ قمری: 1422/6/10
    * تاریخ میلادی: 2020/5/14
    Capture_1.png

    لینک دانلود سورس

  2. #2

    نقل قول: دریافت مقادیر روز، ماه و سال شمسی و قمری از کامپوننت BehComponents

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

    * تاریخ روز: مثلا 1399/6/3
    * نام روز: جمعه
    * نام ماه: شهریور
    * تاریخ قمری: 1422/6/10
    * تاریخ میلادی: 2020/5/14
    فرض کنیم که در dateTimePickerX1 یک تاریخی رو انتخاب می کنید، نتیجه این انتخاب کردن این میشه که رخداد SelectedDateChanged اتفاق می افته و مقادیر مشخصه های زیر هم عوض میشه :
    SelectedDateInDateTime
    SelectedDateInStringEnglish
    SelectedDateInStringPersian

    حالا تاریخ روز شمسی میشه :

    var persian = dateTimePickerX1.SelectedDateInStringPersian;

    نام روز میشه :

    var dayOfWeek = NameOfDayOfWeek(dateTimePickerX1. GetSelectedDateInPersianDateTime(). DayOfWeek);

    private static string NameOfDayOfWeek(DayOfWeek dayOfWeek)
    {
    switch (dayOfWeek)
    {
    case DayOfWeek.Sunday:
    return "یک شنبه";
    case DayOfWeek.Monday:
    return "دو شنبه";
    case DayOfWeek.Tuesday:
    return "سه شنبه";
    case DayOfWeek.Wednesday:
    return "چهار شنبه";
    case DayOfWeek.Thursday:
    return "پنج شنبه";
    case DayOfWeek.Friday:
    return "جمعه";
    case DayOfWeek.Saturday:
    return "شنبه";
    default:
    return "";
    }
    }


    نام ماه میشه :

    var monthOfYear = MonthOfYear( dateTimePickerX1. GetSelectedDateInPersianDateTime().Month);

    private static string MonthOfYear(int month)
    {
    switch (month)
    {
    case 1:
    return "فروردین";
    case 2:
    return "اردیبهشت";
    case 3:
    return "خرداد";
    case 4:
    return "تیر";
    case 5:
    return "مرداد";
    case 6:
    return "شهریور";
    case 7:
    return "مهر";
    case 8:
    return "آبان";
    case 9:
    return "آذر";
    case 10:
    return "دی";
    case 11:
    return "بهمن";
    case 12:
    return "اسفند";
    default:
    return "";
    }
    }


    تاریخ قمری میشه این که البته اون 0 برای تنظیم جلو و عقب کردن تاریخ ئه و عددی بین 2- الی 2+ بهش اختصاص می دهید تا با ستاد استهلال هماهنگ بشه :

    var hijriDateString = HijriDateString( dateTimePickerX1.SelectedDateInDateTime, 0);

    private static string HijriDateString(DateTime dateTime, int adjustment)
    {
    var hijriCalendar = new System.Globalization.HijriCalendar();
    hijriCalendar.HijriAdjustment = adjustment;
    var year = hijriCalendar.GetYear(dateTime);
    var month = hijriCalendar.GetMonth(dateTime);
    var day = hijriCalendar.GetDayOfMonth(dateTime);
    return string.Format("{0}/{1:00}/{2:00}", year, month, day, System.Globalization.CultureInfo.InvariantCulture) ;
    }


    تاریخ میلادی هم که میشه این :

    var gregorian = dateTimePickerX1.SelectedDateInStringEnglish;



    private void dateTimePickerX1_SelectedDateChanged (DateTime selectedDateTime, BehComponents.PersianDateTime selectedPersianDateTime)
    {
    var persian = dateTimePickerX1.SelectedDateInStringPersian;
    var dayOfWeek = NameOfDayOfWeek( dateTimePickerX1.GetSelectedDateInPersianDateTime( ). DayOfWeek);
    var monthOfYear = MonthOfYear( dateTimePickerX1.GetSelectedDateInPersianDateTime( ) .Month);
    var hijriDateString = HijriDateString( dateTimePickerX1.SelectedDateInDateTime, 0);
    var gregorian = dateTimePickerX1.SelectedDateInStringEnglish;
    }

    private static string HijriDateString(DateTime dateTime, int adjustment)
    {
    var hijriCalendar = new System.Globalization.HijriCalendar();
    hijriCalendar.HijriAdjustment = adjustment;
    var year = hijriCalendar.GetYear(dateTime);
    var month = hijriCalendar.GetMonth(dateTime);
    var day = hijriCalendar.GetDayOfMonth(dateTime);
    return string.Format("{0}/{1:00}/{2:00}", year, month, day, System.Globalization.CultureInfo. InvariantCulture);
    }

    private static string MonthOfYear(int month)
    {
    switch (month)
    {
    case 1:
    return "فروردین";
    case 2:
    return "اردیبهشت";
    case 3:
    return "خرداد";
    case 4:
    return "تیر";
    case 5:
    return "مرداد";
    case 6:
    return "شهریور";
    case 7:
    return "مهر";
    case 8:
    return "آبان";
    case 9:
    return "آذر";
    case 10:
    return "دی";
    case 11:
    return "بهمن";
    case 12:
    return "اسفند";
    default:
    return "";
    }
    }

    private static string NameOfDayOfWeek(DayOfWeek dayOfWeek)
    {
    switch (dayOfWeek)
    {
    case DayOfWeek.Sunday:
    return "یک شنبه";
    case DayOfWeek.Monday:
    return "دو شنبه";
    case DayOfWeek.Tuesday:
    return "سه شنبه";
    case DayOfWeek.Wednesday:
    return "چهار شنبه";
    case DayOfWeek.Thursday:
    return "پنج شنبه";
    case DayOfWeek.Friday:
    return "جمعه";
    case DayOfWeek.Saturday:
    return "شنبه";
    default:
    return "";
    }
    }

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

  1. سورس کد کامپوننت BehComponents (تقویم و تاریخ شمسی)
    نوشته شده توسط saeed1386 در بخش C#‎‎
    پاسخ: 40
    آخرین پست: یک شنبه 28 مهر 1398, 08:10 صبح
  2. گرفتن کامپونت behcomponents
    نوشته شده توسط alijavadi123 در بخش C#‎‎
    پاسخ: 7
    آخرین پست: پنج شنبه 05 اردیبهشت 1398, 16:23 عصر
  3. گفتگو: کامپوننت جامع تاریخ شمسی جهت اختلاف روز، تبدیل تاریخ و ...
    نوشته شده توسط salehsam در بخش C#‎‎
    پاسخ: 0
    آخرین پست: شنبه 07 دی 1392, 22:59 عصر
  4. سوال: کم کردن روز، هفته، ماه از تاریخ شمسی
    نوشته شده توسط morika در بخش C#‎‎
    پاسخ: 8
    آخرین پست: یک شنبه 01 اردیبهشت 1392, 08:51 صبح
  5. برنامه نویسی با استفاده از امکانات فارسی ویندوز، بله یا نه؟؟
    نوشته شده توسط مهدی کرامتی در بخش برنامه نویسی در Delphi
    پاسخ: 14
    آخرین پست: دوشنبه 24 شهریور 1382, 14:19 عصر

برچسب های این تاپیک

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

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