我试图显示进程何时开始以及何时完成的时间戳,但我的时间永远不会增加(即使现实中的时间确实如此)
DateTime now = DateTime.Now;
txt1.AppendText(now + Environment.NewLine);
//Lengthy process that usually takes 2 - 3 minutes
txt1.AppendText(now);
答案 0 :(得分:5)
您实际上使用的变量与第一次显示时的值相同。你需要再次得到这样的时间......
DateTime now = DateTime.Now;
txt1.AppendText(now + Environment.NewLine);
//Lengthy process that usually takes 2 - 3 minutes
DateTime timeHasPassed = DateTime.Now;
txt1.AppendText(timeHasPassed);
答案 1 :(得分:3)
DateTime是ValueType。将其分配给变量时,您将复制该值,而不是引用。
这意味着当您使用DateTime.Now时,您必须通过Get Property调用它以获取最新的时间值。
txt1.AppendText(DateTime.Now + Environment.NewLine);
//Lengthy process that usually takes 2 - 3 minutes
txt1.AppendText(DateTime.Now);
答案 2 :(得分:1)
这是因为您在变量中捕获并存储了DateTime.Now
,因此它显示了存储的值。再次使用DateTime.Now
而不是使用now变量。
答案 3 :(得分:1)