从不是创建控件的线程访问它
在做C#异步套接字编程时在新线程中使用回调函数,在回调函数里richTextBox1.AppendText()报错,错误原因---从不是创建控件的线程访问它。
解决方法:
利用委托机制。
private delegate void myDelegate(string str); private void setRich(string str) { if (this.richTextBox1.InvokeRequired) { myDelegate md = new myDelegate(this.setRich); this.Invoke(md, new object[] { str }); } else this.richTextBox1.AppendText(str); }
然后将richTextBox1.AppendText()方法换为this.setRich()即可。
版权声明: