C# 子线程调用主线程窗体的解决方法
作者:网络转载 发布时间:[ 2014/1/6 14:32:44 ] 推荐标签:C# 线程
后是我们的具体程序了:
delegatevoid
aa(strings);//创建一个代理
privatevoidpri(string
t)//这个是我们的函数,我们把要对控件进行的操作放在这里
{
if
(!richTextBox1.InvokeRequired)//判断是否需要进行唤醒的请求,如果控件与主线程在一个线程内,可以写成
if(!InvokeRequired)
{
MessageBox.Show("同一线程内");
richTextBox1.Text=t;
}
else
{
MessageBox.Show("不是同一个线程");
aaa1=newaa(pri);
Invoke(a1,newobject[]{t});//执行唤醒操作
}
}
privatevoidForm1_Load(object
sender,System.EventArgse)
{
Thread
newthread=newThread(newThreadStart(ttread));
newthread.Start();
}
voidttread()
{
pri("sdfs");
}
执行结果先调出一个提示框显示“不是同一个线程”,然后跳出提示框显示“同一线程内”,然后richTextBox1中的text值为sdfs;这样便完成了对其它线程中的控件进行操作。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11