线程间操作无效: 从不是创建控件“textBox1”的线程访问它.关于tcpip通信问题

在线程中我调用了textbox,改变他的值。但是程序不允许,经过查资料得知可以在线程中建立委托,类似于if(textBox1.InvokeRequired){??????... 在线程中我调用了textbox,改变他的值。但是程序不允许,经过查资料得知可以在线程中建立委托,类似于 if (textBox1.InvokeRequired)
{
???????????
Invoke(df);

}

else
{

textBox1.Text = recvStr;

}
但是?????的位置如何写呢,如果写这个委托,小白一个,照猫画虎。求指教,程序内容是客户端想服务器端传字符串,服务器端验收,统计是否有丢包
展开
 我来答
luzhan__326454
2012-01-06 · TA获得超过124个赞
知道小有建树答主
回答量:248
采纳率:0%
帮助的人:162万
展开全部
private void SetText()
{
if(textBox1.InvokeRequired)
{
action d = new action(SetText);//系统自带的委托 不带参数
this.invoke(d);
}
else
{
textBox1.Text = recvStr;
}
}

//定义委托

private delegate void SetTextHander();//不带参数
private delegate void SetTextHander(string recvStr);//带参数

private void SetText(string recvStr)
{
if(textBox1.InvokeRequired)
{
SetTextHanderd = new SetTextHander(SetText);//系统自带的委托 带参数
this.invoke(d,new object[]{recvStr});
}
else
{
textBox1.Text = recvStr;
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式