با سلام
کسی از دوستان هست که تونسته باشه با نوشتن کلاسی کنترل date editor کامپوننت devexpress رو شمسی کنه؟ بنده چنین کلاسی رو برای کامپوننت telerik دارم اما اگه کسی برای devexpress رو داره بزاره هم بنده و هم بقیه دوستان استفاده کنن.
با سپاس
سلام توی سایت خود Dev جستجو کنی میبینی. توی نسخه 2015آورده. اگه اشتباه نکنم.
سلام دوست عزیز
البته فک کنم منظور شما از فارسی کردن، نوشته های کنترل هاست، آره این موضوع که حل شده است. با استفاده از satellite میشه کنترل ها رو هم فارسی کرد.
اما منظور بنده شمسی کردن date editor هست که به صورت عادی شمسی نمیشه.
من تا حدی تونستم این کار رو با مِتد زیر انجام بدم:
public void ToPersian(DevExpress.XtraEditors.DateEdit DateTimePicker) { System.Globalization.PersianCalendar Shamsi = new System.Globalization.PersianCalendar(); DateTime PersianToday = Shamsi.GetYear(DateTime.Now) + "/" + Shamsi.GetMonth(DateTime.Now) + "/" + Shamsi.GetDayOfMonth(DateTime.Now); System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("fa-IR"); System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.MonthNames = new string[] { "فروردین", "اردیبهشت", "خرداد", "تیر", "مرداد", "شهریور", "مهر", "آبان", "آذر", "دی", "بهمن", "اسفند", "" }; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.MonthGenitiveNames = new string[] { "فروردین", "اردیبهشت", "خرداد", "تیر", "مرداد", "شهریور", "مهر", "آبان", "آذر", "دی", "بهمن", "اسفند", "" }; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.AbbreviatedMonthNames = new string[] { "فروردین", "اردیبهشت", "خرداد", "تیر", "مرداد", "شهریور", "مهر", "آبان", "آذر", "دی", "بهمن", "اسفند", "" }; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.AbbreviatedMonthGenitiveNames = new string[] { "فروردین", "اردیبهشت", "خرداد", "تیر", "مرداد", "شهریور", "مهر", "آبان", "آذر", "دی", "بهمن", "اسفند", "" }; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.AbbreviatedDayNames = new string[] { "ی", "د", "س", "چ", "پ", "ج", "ش" }; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortestDayNames = new string[] { "ی", "د", "س", "چ", "پ", "ج", "ش" }; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.DayNames = new string[] { "یکشنبه", "دوشنبه", "ﺳﻪشنبه", "چهارشنبه", "پنجشنبه", "جمعه", "شنبه" }; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.AMDesignator = "ق.ظ"; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.PMDesignator = "ب.ظ"; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortTimePattern = "HH:mm"; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.DateSeparator = "/"; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.FullDateTimePattern = "dd/MM/yyyy HH:mm"; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.FirstDayOfWeek = DayOfWeek.Saturday; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern = "dd/MM/yyyy"; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.LongDatePattern = "dd/MM/yyyy HH:mm"; System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.SetAllDateTimePatterns(new string[] { "dd/MM/yyyy" }, 'd'); System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.SetAllDateTimePatterns(new string[] { "dddd, dd MMMM yyyy" }, 'D'); System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.SetAllDateTimePatterns(new string[] { "yyyy MMMM" }, 'y'); System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.SetAllDateTimePatterns(new string[] { "yyyy MMMM" }, 'Y'); DateTimePicker.EditValue = PersianToday; DateTimePicker.Properties.TodayDate = PersianToday; DateTimePicker.Properties.EditFormat.FormatType = DevExpress.Utils.FormatType.DateTime; DateTimePicker.Properties.DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime; DateTimePicker.Properties.FirstDayOfWeek = DayOfWeek.Saturday; DateTimePicker.Properties.EditMask = "yyyy/MM/dd"; DateTimePicker.Properties.Mask.UseMaskAsDisplayFormat = true; DateTimePicker.RightToLeft = RightToLeft.Yes; }
نتیجه کار به شکل زیر شده:
فقط اینجا یه مشکلی هست روزهای هفته درست قرار نمیگیره و شش ماه دوم 31 روز هم داره ماه اسفند!! که اگر اساتید راهنمایی کنن این مورد هم حل میشه....
با سپاس
سلام بزرگوار
یه سری dll جدید به درخواست کاربرهاش داده بود. هم برای هجری هم برای شمسی مراجعه کنی می بینی برادر. عکسش رو هم برات پیوست کردم.
امیدوارم مفید واقع بشه.
عکسش رو از خود سایت Dev گرفتم.
سلام دوست من
میشه لینکش رو برام بفرستید....
با سلام من هم میخوام DateTimePicker و Scheduler فارسی در devexpress mvc core داشته باشم. کسی این کار رو کرده؟
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)