hi Telerik Group
when i chenge CultureInfo to persian CultureInfo in first time is currect but when i select date that is GregorianCalendar .
other problem is year is not persian is GregorianCalendar
my code for change CultureInfo :
thanks
when i chenge CultureInfo to persian CultureInfo in first time is currect but when i select date that is GregorianCalendar .
other problem is year is not persian is GregorianCalendar
my code for change CultureInfo :
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("fa-IR"); |
System.Globalization.GregorianCalendar |
System.Globalization.DateTimeFormatInfo info = culture.DateTimeFormat; |
info.AbbreviatedDayNames = new string[] { "ی", "د", "س", "چ", "پ", "ج", "ش" }; |
info.DayNames = new string[] { "یکشنبه", "دوشنبه", "ﺳﻪشنبه", "چهارشنبه", "پنجشنبه", "جمعه", "شنبه" }; |
info.AbbreviatedMonthNames = new string[] { "فروردین", "اردیبهشت", "خرداد", "تیر", "مرداد", "شهریور", "مهر", "آبان", "آذر", "دی", "بهمن", "اسفند", "" }; |
info.MonthNames = new string[] { "فروردین", "اردیبهشت", "خرداد", "تیر", "مرداد", "شهریور", "مهر", "آبان", "آذر", "دی", "بهمن", "اسفند", "" }; |
info.AMDesignator = "ق.ظ"; |
info.PMDesignator = "ب.ظ"; |
info.ShortDatePattern = "yyyy/MM/dd"; |
info.FirstDayOfWeek = DayOfWeek.Saturday; |
System.Globalization.PersianCalendar cal = new System.Globalization.PersianCalendar(); |
typeof(System.Globalization.DateTimeFormatInfo).GetField( |
"calendar", System.Reflection.BindingFlags.Public | |
System.Reflection.BindingFlags.Instance | |
System.Reflection.BindingFlags.NonPublic).SetValue(info, cal); |
object obj = typeof(System.Globalization.DateTimeFormatInfo).GetField( |
"m_cultureTableRecord", System.Reflection.BindingFlags.Public | |
System.Reflection.BindingFlags.Instance | |
System.Reflection.BindingFlags.NonPublic).GetValue(info); |
obj.GetType().GetMethod("UseCurrentCalendar", |
System.Reflection.BindingFlags.NonPublic | |
System.Reflection.BindingFlags.Instance).Invoke(obj, |
new object[] { cal.GetType().GetProperty("ID", |
System.Reflection.BindingFlags.Instance | |
System.Reflection.BindingFlags.NonPublic).GetValue(cal, null) }); |
typeof(System.Globalization.CultureInfo).GetField("calendar", |
System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance | |
System.Reflection.BindingFlags.NonPublic).SetValue(culture, cal); |
System.Threading.Thread.CurrentThread.CurrentCulture = culture; |
RadDatePicker1.Culture = culture; |
RadDatePicker1.SelectedDate = DateTime.Now.Date; |
TimeSpan ts = new TimeSpan(3, 30, 00); |
RadDatePicker1.Calendar.FastNavigationSettings.CancelButtonCaption = "انصراف"; |
RadDatePicker1.Calendar.FastNavigationSettings.OkButtonCaption = "تایید"; |
RadDatePicker1.Calendar.FastNavigationSettings.TodayButtonCaption = "امروز"; |