1个回答
展开全部
线程不能操作窗体控件,会引发异常,建议使用委托进行窗体控件的操作,包括 改text.
追问
求个详细步奏,还在纠结中;我需要修改窗体RichTextBox
追答
1、定义委托
delegate void SetTextCallback(string text);
2、实现委托
private void SetText(string text)
{
//如果调用控件的线程和创建创建控件的线程不是同一个则为True
if (this.textBox1.InvokeRequired)
{
SetTextCallback d = new SetTextCallback(SetText);
this.textBox1.Invoke(d, new object[] { text });
}
else
{
this.textBox1.Text = text;
}
}
3、线程中调用该方法
private void ThreadProc()
{
//do something
this.SetText("123");
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询