public partial class Form1 : Form { /* * 界面上有一个button,和一个textbox,点击button1时,开始一个新线程,新线程中有一个方法,从0开始计数 * 并累加,且将每一个新的数字显示到textbox1中去 * */ public Form1() { InitializeComponent(); } public delegate void SetTextDelegate(int text); private void button1_Click(object sender, EventArgs e) { Thread th = new Thread(new ThreadStart(SetText)); th.Start(); } private void SetText() { for (int a=0;a<1000000;a++) { if (textBox1.InvokeRequired) { textBox1.Invoke(new SetTextDelegate(SetTextDo), a); } } } public void SetTextDo(int i) { textBox1.Text = i.ToString(); } } #region Windows 窗体设计器生成的代码 /// <summary> /// 设计器支持所需的方法 - 不要 /// 使用代码编辑器修改此方法的内容。 /// </summary> private void InitializeComponent() { this.button1 = new System.Windows.Forms.Button(); this.textBox1 = new System.Windows.Forms.TextBox(); this.SuspendLayout(); // // button1 // this.button1.Location = new System.Drawing.Point(13, 23); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(75, 23); this.button1.TabIndex = 0; this.button1.Text = "button1"; this.button1.UseVisualStyleBackColor = true; this.button1.Click += new System.EventHandler(this.button1_Click); // // textBox1 // this.textBox1.Location = new System.Drawing.Point(145, 23); this.textBox1.Name = "textBox1"; this.textBox1.Size = new System.Drawing.Size(100, 21); this.textBox1.TabIndex = 1; // // Form1 // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(284, 262); this.Controls.Add(this.textBox1); this.Controls.Add(this.button1); this.Name = "Form1"; this.Text = "Form1"; this.ResumeLayout(false); this.PerformLayout(); }原文:http://www.cnblogs.com/hddkman/p/4286874.html