首页 新闻 会员 周边 捐助

c#如何跨线程调用form窗体(这里不是指控件而是窗体本身)?

0
[已解决问题] 解决于 2013-11-18 13:04

c#如何跨线程调用form窗体(这里不是指控件而是窗体本身)?

yeopp的主页 yeopp | 菜鸟二级 | 园豆:319
提问于:2013-11-18 10:47
< >
分享
最佳答案
1

form1.Invoke(new MethodInvoker(delegate() {

      textBox1.Text = "abc";         
}));
奖励园豆:5
空明流光 | 初学一级 |园豆:111 | 2013-11-18 10:49
其他回答(1)
0

想怎么调用?

平常心队长 | 园豆:1113 (小虾三级) | 2013-11-18 10:55

想在btn的单击事件中开启一个线程,把form窗体传过去,让那个线程可以操作form窗体。

支持(0) 反对(0) yeopp | 园豆:319 (菜鸟二级) | 2013-11-18 11:17

@yeopp: 这个btn所在的form和你要传的form是一个吧?

然后你想在线程里操作form里边的控件?是吗?

支持(0) 反对(0) 平常心队长 | 园豆:1113 (小虾三级) | 2013-11-18 11:20

@zhangliming: 是的

支持(0) 反对(0) yeopp | 园豆:319 (菜鸟二级) | 2013-11-18 11:23

@yeopp: 1.可以 通过在form中定义事件达到访问控件的目的.

2. 然后按照多线程访问控件的方式调用.

我觉得这个问题的关键在于,你的方法体能访问到的是form而不是里边的控件,所以想办法访问到控件就好了.

试一下吧

支持(0) 反对(0) 平常心队长 | 园豆:1113 (小虾三级) | 2013-11-18 11:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册