Xamarin表单收到阿拉伯语DatePicker绑定错误

时间:2019-03-13 07:23:23

标签: xamarin

System.ArgumentOutOfRangeException:此日历不支持指定的时间。它应该在04/30/1900 00:00:00(格林威治日期)和11/16/2077 23:59:59(格林威治日期)之间(包括首尾两天)。 参数名称:时间

1 个答案:

答案 0 :(得分:1)

因为您的ar-sa文化区域的默认日历为UmAlQuraCalendar日历,其范围为 1318/01/01-1500/12/30, 因此您应该将日期更改为公历日期,

例如,您获得日期1378/1/1

UmAlQuraCalendar umAlQuraCalendar = new UmAlQuraCalendar();
var datatime = new DateTime(1378,3,1, umAlQuraCalendar);
GregorianCalendar gregorian = new GregorianCalendar();
DateTime gregorianDate  = new DateTime(gregorian.GetYear(datatime), gregorian.GetMonth(datatime), gregorian.GetDayOfMonth(datatime));
Console.WriteLine("ar-sa----" + gregorianDate  .ToString());//the result will be:"ar-sa----9/14/1958 12:00:00 AM"