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

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

  1. #1

    تبدیل تاریخ شمسی به روز هفته

    با سلام به همگی
    من یه گرید ویو دارم که میخام توش تقویم یک سال رو تعریف کنم مثلا سال 90
    میخام وقتی تاریخو وارد کردم تو سلول بعدی روزش بشینه مثلا زدم 09/04 بشینه جمعه
    لطفا راهنمایی کنید

  2. #2
    کاربر دائمی آواتار ASKaffash
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    تهران
    پست
    2,427

    نقل قول: تبدیل تاریخ شمسی به روز هفته

    سلام
    با استفاده از کلاس PersianCalendar تاریخ شمسی را به میلادی تبدیل کنید سپس از خاصیت DayOfWeek شماره روز هفته را بدست آوردید و با یک تابع شماره را به نام هفته تبدیل کنید دقت شود روز شنبه 0 و یکشنبه 1 و ... می باشد

  3. #3

    نقل قول: تبدیل تاریخ شمسی به روز هفته

    ممنون از راهنمایی تون
    من کدشو رو دوتا txtbox امتحان کردم جوابی که میخامو گرفتم مشکل اینجاست که بلد نیستم این کد رو چه جوری تو دیتاگرید ویو بنویسم!
    چه جوری بهش بگم سلول (مربوط به روز هفته) وقتی تاریخ رو (وقتی تو سلول مربوط به تاریخ) وارد کردم برابر نتیجه بشه؟

  4. #4
    کاربر دائمی
    تاریخ عضویت
    آذر 1385
    محل زندگی
    همین نزدیکیها
    پست
    683

    نقل قول: تبدیل تاریخ شمسی به روز هفته


    dataGridView1.CurrentRow.Cells["فیلد"].Value = "شنبه";

  5. #5

    نقل قول: تبدیل تاریخ شمسی به روز هفته

    من برای انجام تبدیلات تاریخ به سه تا متغیر سال و ماه و روز از جنس int احتیاج دارم. مثل کد زیر که مربوط به ساله


    int year = Convert.ToInt32(dgv_taghvim .CurrentRow .Cells [1].Value .ToString ().Substring(0, 4));

    اول اینکه نمیدونم تو کدوم رویداد گرید ویو کد رو بنویسم؟
    دوم اینکه ( Substring(0, 4 درمورد maskedtextbox جواب میده که فرمت 0000/00/00 رو براش تعریف میکنم اما سلولای گرید ویو textbox هست ! نمیتونم این فرمتو براش ایجاد کنم!

  6. #6

    نقل قول: تبدیل تاریخ شمسی به روز هفته

    این تابع شاید مفید باشه:
            private static DateTime ParseDate(string str)
    {
    int fSlash = str.IndexOf('/'),
    sSlash = str.IndexOf('/', fSlash + 1);

    return new DateTime(short.Parse(str.Substring(0, fSlash)),
    short.Parse(str.Substring(fSlash + 1, sSlash - fSlash - 1)),
    short.Parse(str.Substring(sSlash + 1, str.Length - sSlash - 1)));
    }
    اگر به بهداشت و سلامت حیوانات علاقه دارید، از vetMD.ir دیدن کنید.
    وبلاگ شخصی من: fadavi.net

    اینجا کمتر سر می‌زنم. (تلگرام من)

  7. #7

    نقل قول: تبدیل تاریخ شمسی به روز هفته

    فقط یک نکته بگم در موقع استفاده از تابع فوق حتما از بلوک try...catch استفاده کنید. چون اگر کاربر اشتباهی چیزی وارد کنه یک استثنا (Exception) پرتاب میشه...
    اگر به بهداشت و سلامت حیوانات علاقه دارید، از vetMD.ir دیدن کنید.
    وبلاگ شخصی من: fadavi.net

    اینجا کمتر سر می‌زنم. (تلگرام من)

  8. #8

    نقل قول: تبدیل تاریخ شمسی به روز هفته

    یک چیز جالب بگم؟!
    اصلا از تابع فوق استفاده نکنید!

    string anyStr = "1390/2/4";
    DateTime dt;
    try
    {
    dt = DateTime.Parse(anyStr);
    }
    catch(Exception ex)
    {
    // Do Something
    }
    اگر به بهداشت و سلامت حیوانات علاقه دارید، از vetMD.ir دیدن کنید.
    وبلاگ شخصی من: fadavi.net

    اینجا کمتر سر می‌زنم. (تلگرام من)

  9. #9

    نقل قول: تبدیل تاریخ شمسی به روز هفته

    تو کدوم رویداد گرید ویو کد رو بنویسم؟
    تو cellmouseclick نوشتم اصلا جواب نداد . تو keypress جواب میده ولی فقط در مورد یک سطر!

  10. #10
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1390
    محل زندگی
    چند قدم اون ور تر
    پست
    1,731

    نقل قول: تبدیل تاریخ شمسی به روز هفته

    سلام
    می تونید از رویدادهای cellEndEdit یا cellLeave استفاده کنید که کاربر بعد از زدن Tab یا کلیدهای جهت، نتیجه رو ببینه.
    از این کدها هم می تونید استفاده کنید
    privatevoid dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
    {
    char[] charr = dataGridView1.CurrentRow.Cells[0].Value.ToString().ToCharArray();
    string mah = charr[5].ToString() + charr[6].ToString();
    string sal = charr[0].ToString() + charr[1].ToString() + charr[2].ToString() + charr[3].ToString();
    string rooz = charr[8].ToString() + charr[9].ToString();
    }

  11. #11
    کاربر دائمی آواتار saeed_sho
    تاریخ عضویت
    خرداد 1390
    محل زندگی
    تهران
    پست
    890

    نقل قول: تبدیل تاریخ شمسی به روز هفته

    اگه بخوایم موقع لود شدن فرم تاریخ میلادی رو از هر سطر گریدویو بگیریم و به شمسی تبدیل کنیم و توی هر سطر جداگانه که تاریخش رو تبدیل کردیم بزاریمش سر جاش توی کدوم رویداد بنویسیم؟
    cellendedit or cellformatting کدوم بهتره؟

  12. #12

    نقل قول: تبدیل تاریخ شمسی به روز هفته

    PersianCalendar p = new PersianCalendar();
    DateTime dmiladi = new DateTime();
    dmiladi = DateTime.Now;

    switch (p.GetDayOfWeek(dmiladi).ToString().ToLower())
    {
    case "saturday": LbDay.Text = "شنبه";
    break;
    case "sunday": LbDay.Text = "یکشنبه";
    break;
    case "monday": LbDay.Text = "دوشنبه";
    break;
    case "tuesday": LbDay.Text = "سه شنبه";
    break;
    case "wednesday": LbDay.Text = "چهارشنبه";
    break;
    case "thursday": LbDay.Text = "پنجشنبه";
    break;
    case "friday": LbDay.Text = "جمعه";
    break;
    }

    موفق باشید

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

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