但我想設置日期時間格式,特別是日期格式爲MM/dd/yy。
如果我理解正確。您可以更改格式模板模板,如下所示:
Windows.Globalization.DateTimeFormatting.DateTimeFormatter dateFormatter = new DateTimeFormatter("{month.integer(2)}/{day.integer(2)}/{year.abbreviated}", new[] { "en-US" }, "US", CalendarIdentifiers.Gregorian, ClockIdentifiers.TwelveHour);
它將得到如下輸出:07/08/16
。對於格式模板細節,您可以參考格式模式字段的this document。
如何在整個應用程序中實現此目的。
您可以在全球範圍通過保存它App.Resources
存儲此格式象下面這樣:
內OnLaunch
方法App.Xaml.cs
:
protected override void OnLaunched(LaunchActivatedEventArgs e)
{
...
var dateFormatter = new DateTimeFormatter("{month.integer(2)}/{day.integer(2)}/{year.abbreviated}", new[] { "en-US" }, "US", CalendarIdentifiers.Gregorian, ClockIdentifiers.TwelveHour);
this.Resources.Add("dateFormatter", dateFormatter);
...
}
然後你就可以通過像下面的代碼在你的應用程序的任何地方得到它:
var formater = (DateTimeFormatter)App.Current.Resources["dateFormatter"];
var timeStr=formater.Format(DateTime.Now);
更新: 對於DatePicker
控制,您可以手動設置DayFormat,MonthFormat和YearFormat象下面這樣:
<DatePicker DayFormat="{}{day.integer(2)}" MonthFormat="{}{month.integer(2)}" YearFormat="{}{year.abbreviated(2)}"></DatePicker>
而對於CalendarDatePicker,您可以手動設置DateFormat屬性象下面這樣:
<CalendarDatePicker DateFormat="{}{day.integer(2)}/{month.integer(2)}/{year.abbreviated(2)}" ></CalendarDatePicker>
如何我是否對所有DatePicker,CalendarDatePickers默認應用? – AbsoluteSith
默認情況下,您無法爲所有DatePickers和CalendarDatePickers設置它。您只能手動設置DatePickers的'DayFormat','MonthFormat'和'YearFormat'屬性以及'CalendarDatePickers'的'DateFormat'。我會更新答案。 –
有什麼辦法按特定順序排列它們嗎?像MM/dd/yyyy一樣。造成這種情況默認情況下采用設備的格式。 – AbsoluteSith