Visual C# 2005如何跨线程访问listBox控件

来源:百度知道 编辑:UC知道 时间:2024/06/08 13:39:19

是在线程里面访问控件是吧。那需要用delegate了。给你一个我在实际开发中在进程中改写LABEL的例子。这样在线程中调用函数就可以改变LABEL的值了。操作ListBox也一样的道理

delegate void SetTextCallback(string txt);

private void ShowTxt(string str)
{
try
{
if (this.returnLb.InvokeRequired)
{
SetTextCallback stc = new SetTextCallback(ShowTxt);
this.Invoke(stc, new object[] { str });
}
else
{
this.returnLb.Text = str;
}
}
catch
{
}
}