线程之间互相 访问的问题!!!
我   一个函数   是   TCP操作的类, 
 有一个   事件是   接收!! 
 因为用的是异步的,所以不用自己控制线程,但接收里面也相当与内部的一个线程了。 
 在这个线程里面,我操作   WINDOWS控件,给控件属性赋值,抱错误说   
 线程间操作无效:   从不是创建控件“XXX”的线程访问它。 
 不能   改他的值!   
 但我以前的代码好用,同样在线程里给WIN控件   修改值,但现在这个代码和以前的一个性质,同样是   在线程序里   修改控件值,但就不好用了?真不明白,以前也是,写有些工程的时候就   可以在线程里修改,写有些的时候就必须用委托封送。请问具体差在哪?不管他安全不安全的   
 要   不能操作就全不能操作,如果能操作就全能操作,弄了个   有时候好用有时候不好用真让人不知道怎么回事? 
 到底差在哪请问?      以前2003里有时候能修改,有时候不能修改。服了。 
------解决方案--------------------2003的可以,但是2005的不行 
 两个解决办法: 
 用委托,给个示例: 
 delegate void SetTextCallback(string text);建立委托   
 private void SetText(string text) 
         { 
             if (this.listBox1.InvokeRequired) 
             { 
                 SetTextCallback d = new SetTextCallback(SetText); 
                 this.Invoke(d, new object[] { text }); 
             } 
             else 
             { 
                 this.listBox1.Items.Add(text); 
             } 
         }   
 private void Accp() 
         { 
             try 
             { 
                 MyServer = new IPEndPoint(myIp, Int32.Parse(textBox2.Text)); 
                 sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); 
                 sock.Bind(MyServer); 
                 sock.Listen(50); 
                 SetText( "主机: " + textBox1.Text +  "端口: " + textBox2.Text +  "   开始监听。。。\r\n "); 
                 while (true) 
                 { 
                     accsock = sock.Accept(); 
                     if (accsock.Connected == true) 
                     {                           
                         SetText( "与客户端建立连接 ");   //线程间操作listBox~ 
                         Thread thread = new Thread(new ThreadStart(Round)); 
                         thread.Start(); 
                     } 
                 } 
             } 
             catch (Exception ee) 
             { 
                 MessageBox.Show(ee.Message); 
             } 
         }   
 或者在窗体的构造函数里这样写一句:CheckForIllegalCrossThreadCalls = false;
------解决方案--------------------CheckForIllegalCrossThreadCalls = false; 
 加在哪里?