1.winform 写了个进程监控,实机运行时发现如图1报异常。
按照图片中提示是timer2丢出,timer2作用仅是更新界面label中“监控已运行****”
timer2代码逻辑很简单:每隔1秒更新label。见代码片
private void Timer2_Tick(object sender,EventArgs e)
{
if(tb.ToString() == "0001/1/1 0:00:00")
{
}
else
{
this.label1.Text = "监控已运行:" + (DateTime.Now - tb).ToString("g").Substring(0,11);
}
}
我理解下来,报错的意思是时间相减之后位数不够11位了,所以抛出异常,这个理解对么?
2.同时还问个问题:如图2
dt是datetime 未点button时未赋值,它在tostring()的时候咋还会有异常呢?能否指点一下。
新手轻喷!
谢谢
试试这么处理
Eeeeee
string str = null;
TimeSpan ts = starTime.Subtract(nowTime).Duration();
str = ts.Days.ToString() + "天" + ts.Hours.ToString() + "小时" + ts.Minutes.ToString() + "分钟" + ts.Seconds.ToString() + "秒";
return str;