本帖最后由 于振发 于 2013-9-28 16:47 编辑
我第一次使用线程,有这么个问题:我再窗体上放了一个listBox1,创建了两个线程,我再线程中访问这个listBox1的时候,系统说不能跨线程调用控件,这怎么回事 ,怎么解决??
代码如下:
private void Form1_Load(object sender, EventArgs e)
{
//创建线程 需要System.Threading命名空间
Thread t1, t2; // 说明为窗体类成员
t1 = new Thread(new ThreadStart(BackgroundProcess));
t1.Start(); //启动线程t1
}
private void BackgroundProcess()
{
int i = 1;
while (true)
{
// 向列表框增加一个项目
listBox1.Items.Add("Iterations: " + i.ToString());
i++;
Thread.Sleep(2000); // 指定线程休眠的时间
}
}
谢谢各位了 |