C# WinForm 界面异步调用;

 Task t = new Task(() =>
            {
                while (true)
                {
                    this.Dispatcher.BeginInvoke(new Action(() =>
                    {
                        textBlock1.Text = DateTime.Now.ToString();
                    }));
                    Thread.Sleep(1000);
                }
            });
            //为了捕获异常,启动了一个新任务
            t.ContinueWith((task) =>
            {
                try
                {
                    task.Wait();
                }
                catch (AggregateException ex)
                {
                    foreach (Exception inner in ex.InnerExceptions)
                    {
                        MessageBox.Show(string.Format("异常类型:{0}{1}来自于:{2}{3}异常内容:{4}", inner.GetType(), Environment.NewLine, inner.Source, Environment.NewLine, inner.Message));
                    }
                }
            }, TaskContinuationOptions.OnlyOnFaulted);
            t.Start();

C# WinForm 界面异步调用;