确定是否设置了“24小时制”设置

确定用户是否在Windows Phone的“设置 – 日期+时间”中将“24小时制”设置设置为true的最佳方法是什么?

我可以通过CurrentCulture(CultureInfo)获取此信息吗? 找到它我没有运气。

可以使用以下方法检索系统时钟类型:

 string clockType = Windows.System.UserProfile.GlobalizationPreferences.Clocks.FirstOrDefault(); 

如果24小时设置在设备设置中打开,则返回字符串24HourClock如果设置24HourClock则返回24HourClock

获取小时的DateTimeFormatInfo.CurrentInfo.ShortTimePattern方式与文化相关联,而不是显示是否启用24小时时间的选项。 因此,您将获得英语(美国)的 h:mm tt德语(德国)的 HH:mm

此时,您无法获得此系统设置。

在Dennis回答的背后,您应该能够使用String.Contains确定24小时的时间:

 bool is24HourTime = DateTimeFormatInfo.CurrentInfo.ShortTimePattern.Contains("H"); 

对于日本开发者,请注意。

无论24小时时间的电话设置是否启用,文化ja-JP中的DateTimeFormatInfo.CurrentInfo.ShortTimePattern都将返回相同的字符串H:mm