为什么我从 CultureInfo 得到的时间格式不正确?

发布于 2024-12-08 20:47:16 字数 363 浏览 0 评论 0原文

我必须在某些操作期间在应用程序上显示当前时间,如果当前系统时间格式为 HH:mm:ss 那么如果用户将其更改为 hh:mm:ss tt 当应用程序仍在运行时,它不会接受更改!它仍然以 HH:mm:ss 格式显示时间。

我尝试使用 DateTime.Now.ToLongTimeString()DateTime.Now.ToString(System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.LongTimePattern);

是否缺少任何内容?有什么建议来解决这个问题吗?

I have to display a current time on my application during certain operations, if current system time format is HH:mm:ss then if user change it to hh:mm:ss tt when app is still running it does not pick up the changes! It still displays time in HH:mm:ss.

I tried using DateTime.Now.ToLongTimeString() and DateTime.Now.ToString(System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.LongTimePattern);

Is there anything missing? Any suggestions to fix the problem?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

溇涏 2024-12-15 20:47:16

我强烈怀疑该框架只是缓存了用于时间格式的模式,并且通常不会再次拾取它,直到您重新启动应用程序。

您可以尝试调用 ClearCachedData< /a> 并查看它是否返回操作系统以获取系统时间格式。 (我不知道当格式发生变化时是否有任何东西可以监控来计算出来——当然,你不想一直清除缓存。)

I strongly suspect that the framework is simply caching the pattern used for the time format, and won't normally pick it up again until you restart the app.

You could try calling ClearCachedData and see if it then goes back to the OS for the system time format. (I don't know whether there's anything you can monitor to work out when the format has changed - you don't want to be clearing the cache all the time, of course.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文