PDA

View Full Version : نشان دادن تاریخ در دیتا گرید



saman6488
جمعه 27 آذر 1388, 19:27 عصر
سلام ، بچه ها کسی میدونه چطور میشه تاریخی که توی دیتا بیس به صورت میلادی ذخیره شده رو به تاریخ شمسی تبدیل کرد و توی دیتا گرید نشون داد:خجالت:

AliRezaPro
جمعه 27 آذر 1388, 22:18 عصر
چرا شما تاریخ رو در دیتابیس بصورت Char نمیگیرید و تاریخ رو بصورت شمسی وارد نمیکنید؟
یا از نوع int بگیرید و تاریخ شمسی رو قبل از ارسال / را بردارید و هنگام بازخوانی / را بگذارید

www.yutab.net
چهارشنبه 20 مهر 1390, 03:52 صبح
سلام؛

برای اینکه بتونی از تبدیلگر تاریخ شمسی استفاده کنی باید از System.Globalization.PersianCalendar استفاده کنی.

فرض کنیم شما یه لیبل داری که می خوای تاریخو توش نشون بدی و اسمشم هست: lblDate
خب
بریم سروقت کد نویسی!

اول یه شیء از نوع تاریخ فارسی می سازیم برای نگه داشتن مقدار تاریخمون. اسمش باشه فرضاً "pc" و با خودش نیو ش می کنیم؛
این کار رو اینجوری انجام می دیم: System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();

خب حالا دوستان فارسی زبانمونو یوزینگ می کنیم و پراپرتی تکست لیبل رو برابر با اون قرار می دیم:
this.lblDate.Text = pc.GetYear(DateTime.Now) + "/" + pc.GetMonth(DateTime.Now) + "/" + pc.GetDayOfMonth(DateTime.Now);

این اسلشایی هم که کانکَت شده وسط گِت ها نقش ممیز رو بازی می کنن.
به همین راحتی.

کد همه ش با هم اینجوری می شه:

System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();
this.lblDate.Text = pc.GetYear(DateTime.Now) + "/" + pc.GetMonth(DateTime.Now) + "/" + pc.GetDayOfMonth(DateTime.Now);