2017-04-17 32 views
0

让我有些DateTime'sstartendnowC#。日期时间范围与进度条?

DateTime start = Convert.ToDateTime(task.issued_in); 
DateTime end = (Convert.ToDateTime(task.issued_in).AddHours(Convert.ToDouble(task.lead_time))); 
DateTime now = DateTime.Now; 

而且我想要做一个ProgressBar展现的过程。 (startProgressBarendend开头)

我的想法是progressBar.Value = (now.hours - start.hours)/(start.hours + end.hours)

但我不能这样做。也许有办法做到这一点?

回答

1

我相信进步是通过小时总学时的关系:

progressBar.Value = (int)((now - start).TotalHours/(end - start).TotalHours); 

或者这样你计算结束时间为start + task.lead_time,你可以使用lead_time为总任务时间:

progressBar.Value = (int)((now - start).TotalHours/task.lead_time); 
+1

完蛋了。 Cant upvote u,but thanks –

+1

@ArtemyWiese:如果这个答案解决了你的问题,你可以(也应该)通过点击帖子左边的勾号/勾号标记它为“接受”。欲了解更多信息,请参阅:[**如何接受答案工作?**](https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work) –