uwp CalendarDatePicker设置日期格式

时间:2016-03-04 22:38:19

标签: win-universal-app

我正在尝试为CalendarDatePicker设置日期格式以用于全球化目的。我试过这个:

endDate = (FindName("cdpEnd") as CalendarDatePicker);
endDate.DateFormat = CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern;
endDate.Date = workObject.EndCal;

但它给了我以下例外:

System.ArgumentException: The parameter is incorrect.

formatTemplate
   at Windows.UI.Xaml.Controls.CalendarDatePicker.put_DateFormat(String value)
   at App1.PageWorkObject.rootGrid_Loaded(Object sender, RoutedEventArgs e)

我检查了我设置的值,看起来很正常:"M/d/yyyy"

我做错了什么?

1 个答案:

答案 0 :(得分:2)

当您使用CalendarDatePicker时,TextBox部分的字符串内容由DateTimeFormatter创建。

"M/d/yyyy"似乎很正常,但

  

重要您不能随意组合组件,必须获得有效的模板。唯一有效的模板是由提供的语法定义的模板。

如果您阅读了DateTimeFormatter课程,您会发现没有"M/d/yyyy"这样的格式,格式与"M/d/yyyy"相同,我认为它应该是这样的:< / p>

endDate.DateFormat = "{month.integer}‎/‎{day.integer}‎/‎{year.full}";