在我的WinForms应用程序,我与他们每个人的时间来显示事件列表(如按钮的点击)。时间格式必须与Windows区域设置相同。所以我使用DateTimeoffset.ToLocalTime().ToString()
为这是工作完美。获取区域设置动态
如果我更改Windows区域设置(时区或格式)的应用程序运行时,时间仍然显示在旧的格式。作为一种解决方法,我必须重新启动应用程序,以便获取新的区域设置。
有没有办法让在运行这些设置吗?
在我的WinForms应用程序,我与他们每个人的时间来显示事件列表(如按钮的点击)。时间格式必须与Windows区域设置相同。所以我使用DateTimeoffset.ToLocalTime().ToString()
为这是工作完美。获取区域设置动态
如果我更改Windows区域设置(时区或格式)的应用程序运行时,时间仍然显示在旧的格式。作为一种解决方法,我必须重新启动应用程序,以便获取新的区域设置。
有没有办法让在运行这些设置吗?
尝试调用此:
Thread.CurrentThread.CurrentCulture.ClearCachedData()
,然后重试本地时间呼叫
当他将需要调用它? –
工作。但清除每个事件的缓存似乎不是一个好主意 – Mhd
@Mhd看看这个链接:https://stackoverflow.com/questions/4711555/how-to-receive-event-when-user-changes-systems-文化 如果事件触发改变的时间,然后清除缓存 –
的可能的复制([如何当用户改变系统的文化接收事件] https://stackoverflow.com/questions/ 4711555 /如何对接收-事件时,用户改变系统培养) – DonBoitnott