线程间操作无效: 从不是创建控件“label5”的线程访问它

来源:互联网 发布:javascript书籍 知乎 编辑:程序博客网 时间:2024/06/06 08:39

是不是在子线程(非主线程)的代码里用了label5啊? 

这样是不行的,因为label5是主线程实例化创建的,子线程不能访问它. 

建议 LZ 换一种解决方案来实现你的功能需求. 


例子。 
private delegate void TestDelegate(); 
private void DelegateMethod(){ 
////label...... 

private void StartMethod(){ 

if (this.InvokeRequired) 
{

this.Invoke(new TestDelegate(DelegateMethod)) 

}

else

{

this.textbox.Text = value; 
}




private button_click(...){ 
Thread thread = new Thread(new ThreadStart(StartMethod)); 
thread.Start(); 
}

原创粉丝点击