我想每秒更新一次DateTime
标签..我有这个代码..但我收到错误..说" Cannot implicitly convert type 'System.TimeSpan' to 'int' "
这是我的代码......有人可以告诉我该如何解决这个问题?
private void myTimer_Tick(object sender, EventArgs e)
{
lblTime.Text = DateTime.Now.ToString();
}
private void User_Load(object sender, EventArgs e)
{
System.Windows.Forms.Timer myTimer = new System.Windows.Forms.Timer();
myTimer.Tick += new EventHandler(myTimer_Tick);
myTimer.Interval = new TimeSpan(0, 0, 1);
myTimer.Start();
}
答案 0 :(得分:3)
Interval属性需要数值(毫秒)而不是TimeSpan
myTimer.Interval = 1000;
但请记住,每秒触发一次事件只是为了更新时钟标签可能有点过分。同一个MS每分钟更新托盘栏上的时钟。我很确定如果你把你的机器放在繁重的工作负载下,你会注意到标签更新的跳转。
答案 1 :(得分:2)
Interval接受毫秒为double而不是TimeSpan 见http://msdn.microsoft.com/de-de/library/system.timers.timer.interval%28v=vs.110%29.aspx
来自MSDN
[TimersDescriptionAttribute("TimerInterval")]
[SettingsBindableAttribute(true)]
public double Interval { get; set; }
答案 2 :(得分:2)
myTimer.Interval = 1000;//miliseconds