各位高手:
    本人这个程序做了一半(随机产生字母),但做不下去了为什么老是出现"未处理的“System.ArgumentException”类型的异常出现在 system.windows.forms.dll 中。其他信息: 在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级。"这样一段话.请较各位高手我的问题是出在哪呢?.原代码如下
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Threading;namespace TypeWrite
{
/// <summary>
/// Form1 的摘要说明。
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
private String sign;
// private bool deleteSign = false;
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.Container components = null; public Form1()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent(); //
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
} /// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null) 
{
components.Dispose();
}
}
base.Dispose( disposing );
}

#region Windows 窗体设计器生成的代码
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
// 
// Form1
// 
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(292, 266);
this.Name = "Form1";
this.Text = "Form1";
this.Load += new System.EventHandler(this.Form1_Load); }
#endregion /// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main() 
{
Application.Run(new Form1());
}
public void newLetter()
{

Random random = new Random();
Label objLbl = new Label();
objLbl.Text = randLetter() + "";
int xLocation = random.Next(this.Width);
objLbl.Location = new Point(xLocation ,0);
objLbl.Size = new Size(16,16);
this.Controls.Add(objLbl);
while(objLbl.Location.Y > this.Height)
{
int yLocation = objLbl.Location.Y;
objLbl.Location = new Point(xLocation, yLocation++);
if (objLbl.Text.Trim() == sign)
{
sign = "";
break;
}
}

}
public string randLetter()
{
Random random = new Random();
char i = (char)"abcdefghijklmnopqrstuvwcyz".ToCharArray().GetValue(random.Next(26));
return i + "";
} private void Form1_Load(object sender, System.EventArgs e)


}
public void sss(object o) 
{
Random random = new Random();
Label l = (Label)(o);
int xLocation = random.Next(this.Width);
l.Location = new Point(xLocation);
l.Size = new Size(16, 16);
l.Text = randLetter();
this.Controls.Add(l);
}
}
}