使用子线程控制主线程中的label控件显示当前时间
首先创建一个子线程
Thread th = new Thread(GetNowTime); th.IsBackground = true; th.Start();
使用MethodInvoker
这个委托类型,输入参数无输出参数也无,就可以使用C#的MethodInvoker直接构造,关于MethodInvoker,MSDN给出这样一个解释“表示一个委托,该委托可执行托管代码中声明为 void 且不接受任何参数的任何方法”
private void GetNowTime() { while (true) { label17.Invoke ( new MethodInvoker ( delegate { label17.Text = DateTime.Now.ToString(); } ) ); //线程暂停 Thread.Sleep(1000); } }