设置DateTimeFormat区域性与不带值转换器的xamarin中的当前区域性不同

设置DateTimeFormat区域性与不带值转换器的xamarin中的当前区域性不同,datetime,xamarin,xamarin.forms,cultureinfo,Datetime,Xamarin,Xamarin.forms,Cultureinfo,时间格式不变 Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("ar-SA"); Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture("ar-SA"); var clone = Thread.CurrentThread.

时间格式不变

        Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("ar-SA");
        Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture("ar-SA");
        var clone = Thread.CurrentThread.CurrentCulture.Clone() as CultureInfo;
        clone.DateTimeFormat = CultureInfo.GetCultureInfo("en-CA").DateTimeFormat;

        Thread.CurrentThread.CurrentCulture = clone;
        Thread.CurrentThread.CurrentUICulture = clone;
数据库中的内容和UI中的内容的图像


尝试直接设置单独的数据格式:

    CultureInfo cultureInfo = (CultureInfo)Thread.CurrentThread.CurrentCulture.Clone();
    cultureInfo.DateTimeFormat.ShortDatePattern = "dd/MM/yyyy";
    cultureInfo.DateTimeFormat.DateSeparator = "/";
    Thread.CurrentThread.CurrentCulture = cultureInfo;
更新:


尝试直接设置单独的数据格式:

    CultureInfo cultureInfo = (CultureInfo)Thread.CurrentThread.CurrentCulture.Clone();
    cultureInfo.DateTimeFormat.ShortDatePattern = "dd/MM/yyyy";
    cultureInfo.DateTimeFormat.DateSeparator = "/";
    Thread.CurrentThread.CurrentCulture = cultureInfo;
更新:


否,相同的问题我打印了值,但它确实发生了变化。查看我的更新答案。如果当前应用程序语言为阿拉伯语,则日期为阿拉伯语日历,而不是1月和2月等等,并且本地数据库中的日期正常,如2020年12月15日,但日期显示为示例01/11/1443。1443是如何来的?我无法在我这边复制它。我编辑了帖子并添加了图片,在UI中它是Hijiri CalenderNo,同样的问题我打印了值,它确实改变了。查看我的更新答案。如果当前应用程序语言为阿拉伯语,则日期为阿拉伯语日历,而不是1月和2月等等,并且本地数据库中的日期正常,如2020年12月15日,但日期显示为示例01/11/1443。1443是如何来的?我不能在我这边复制它。我编辑了帖子并添加了图片,在UI中是Hijiri日历