KTO*_*TOV 0 c# timer win-universal-app
我有这个代码:
private void TimePlayedTimer_Start()
{
timePlayedStr = "00:00:00";
timePlayed = new DispatcherTimer();
timePlayed.Tick += timePlayedTimer_Tick;
timePlayed.Interval = new TimeSpan(0, 0, 0, 1);
timePlayed.Start();
}
void timePlayedTimer_Tick(object sender, object e)
{
TimeSpan ts = TimeSpan.Parse(timePlayedStr);
ts = ts.Add(TimeSpan.FromSeconds(1));
timePlayedStr = ts.ToString();
}
Run Code Online (Sandbox Code Playgroud)
当我调试此行,行,TimeSpan ts就等于"00:00:00"但行后ts = ts.Add(TimeSpan.FromSeconds(1));,将一些如何有属性TotalDays = 2.313232439423,TotalHours = 0.000555555,TotalMilliseconds = 2000而不是添加1到TotalSeconds属性我得到这些属性值返回.
有谁知道我做错了什么?
PS:我只想TimeSpan在每次之后添加第二个tick
TotalDays实际值是2.31481481481481E-05,即0.0000231481481481481.
你得到的值正是第二个滴答的预期值,你没有设法调试第一个滴答,而你只是解释错误的值.
的TotalDays,TotalHours和TotalMilliseconds属性显示在总价值TimeSpan转换为该特定测量中,它们不一起形成的值.
2秒与2000毫秒相同,与0.000555555小时相同.
如果你想看看在价值的成分,你应该看看Days,Hours,Minutes,Seconds和Milliseconds属性.在那里你会发现该Seconds物业是2,所有其他都是零.