2011-09-05 83 views
3

确定用户是否在Windows Phone上的Settings-Date + Time中将“24小时制”设置设置为true的最佳方法是什么?确定是否设置了“24小时制”设置

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

+1

你可以在时间模式中寻找'H'。但我猜应该有更好的选择。 – Joey

回答

3

系统时钟类型可以使用检索到:

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

这将返回字符串24HourClock如果在24小时的设定是在所述设备设置或12HourClock如果设置为关闭。

2

DateTimeFormatInfo.CurrentInfo.ShortTimePattern获得小时的方式与文化有关,而不是显示是否启用24小时时间的选项。所以你会得到h:mm tt英文(美国)HH:mm德国(德国)

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

2

在丹尼斯的答案的时候,你应该能够使用String.Contains确定的24小时时间:

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

这不符合设定......只是与文化。 – swinefeaster

1

日本开发人员,请注意。

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

+0

实际上,对于所有文化来说,行为如上所述。 – swinefeaster

相关问题