C#跨线程访问控件

public delegate void MyInvoke(string str);
private void button9_Click(object sender, EventArgs e)
        {
            //_myInvoke = new MyInvoke(SetText);
            //CheckForIllegalCrossThreadCalls = false;
            Thread t = new Thread(new ThreadStart(fun));
            t.Start();
        }

        private void fun()
        {
            //_myInvoke("dddd");
            SetText("ddd");
        }
        private void SetText(string s)
        {
            if (textBox6.InvokeRequired)
            {
                MyInvoke _myInvoke = new MyInvoke(SetText);
                this.Invoke(_myInvoke, new object[] { s });
            }
            else
            {
                this.textBox6.Text = s;
            }
        }

 

posted on 2014-03-16 23:14  BCodeSoft  阅读(203)  评论(0)    收藏  举报

导航