我想更改UWP的DatePicker样式

时间:2017-02-20 10:15:35

标签: datepicker uwp styles

我想更改UWP的DatePicker样式,如下所示。

我希望第一个月和第二个月到来。

我修改了样式,但它不起作用。

我该怎么办?

感谢您的回复。

enter image description here

1 个答案:

答案 0 :(得分:1)

根据this article

  

有许多不同的方法可以正确显示日期和时间。不同的地区和文化对日期中的日期和月份的顺序使用不同的约定,用于分隔时间中的小时和分钟,甚至使用标点符号作为分隔符。

如果您使用date and time picker控件,这些控件将自动使用用户首选语言和区域的日期和时间格式。因此,订单由用户的首选语言和区域定义,您不应该使用DatePicker的样式更改它们。

您在上面显示的第一张图片似乎是首选语言en-US,而归属区域是US。对于基于用户的语言,区域或文化偏好提供不同功能的方案,Windows为您提供了通过Windows.System.UserProfile.GlobalizationPreferences访问这些首选项的方法。第二个图像似乎是首选语言是中文。首选语言可以通过属性PrimaryLanguageOverride覆盖。请注意,PrimaryLanguageOverride属性应仅设置为可供用户使用的语言。

因此,如果您将偏好的语言更改为中文,DataPicker可能会按year-mouth-day的顺序显示。还需要在第二个图像显示时更改格式。代码如下:

<DatePicker  BorderThickness="0" FontFamily="Arial Black" FontSize="15" FontWeight="Bold"  MinWidth="190" DayFormat="{}{day.integer(2)}" MonthFormat="month.numeric" YearFormat="{}{year.full(4)}"   />

背后的代码

  ApplicationLanguages.PrimaryLanguageOverride = "zh-Hans-CN";

结果

enter image description here

要尊重用户的语言和文化偏好,建议不要更改。