

























需求:在c#中要捕获TimeZone变化的事件。
经过简单的分析发现,c#中没有直接捕获TimeZone Change的事件,但是通过google搜索时,发现一个SystemEvents类提供了许多系统属性变化的时间,其中有一个就是TimeChange事件。考虑到TimeZone带来的附加效果就是Time的变化,所以在此利用了TimeChange事件,来捕获TimeZoneChange事件,具体的代码如下:
Code
Remarks:
由于TimeZoneInfo对象使用了缓存机制,即它会将获得的TimeZoneInfo缓存起来,在用户请求当前时区属性(Local)时,直接返回缓存的TimeZone,而不重新获取新的TimeZone,所以在获取新的TimeZone属性时,需要先清空Culture和TImeZone的缓存,如下所示:
System.Globalization.CultureInfo.CurrentCulture.ClearCachedData();
TimeZoneInfo.ClearCachedData();
posted on 2009-08-08 13:03 chinese_submarine 阅读(497) 评论() 收藏 举报
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。