A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 宋旭东 中级黑马   /  2013-7-6 23:37  /  901 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

有这么个问题:我在窗体上放了一个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); // 指定线程休眠的时间
            }
           
        }

1 个回复

倒序浏览
您需要登录后才可以回帖 登录 | 加入黑马