我有一个应用程序旨在计算员工的工作时间。我必须每周显示总数。要做到这一点,我每天都循环使用,并且每天都使用Add()方法。最后,我会在标签上写几小时和几分钟。使用时间跨度在24小时内添加间隔
foreach (DataRow day in days.Rows)
{
TimeSpan tsToAdd = new TimeSpan((int)day["hours"], (int)day["minutues"],0);
ts = ts.Add(tsToAdd);
}
label.text= ts.Hours.ToString("00") + ":" + ts.Minutes.ToString("00");
但是,当ts.hours超过24时,它从0重新开始。例如,25小时30分钟变成1小时30分钟。 我尝试使用TotalHour和TotalMinutes,但它不是我想要的。
如何显示,例如“30:20”?
THX
'TotalHours'有什么问题? '((int)ts.TotalHours).ToString(“00”)' – CompuChip
如果我有4天共36小时,总时数是正确的,但总的小时数显示36小时内的分钟数,所以结果是36: 2160 – Daniele
不要同时使用'TotalHours' *和*'TotalMinutes',使用'Totalhours' * *'Minutes'(根据我的答案) –