首页 新闻 会员 周边 捐助

C#代码生成控件

0
悬赏园豆:50 [已关闭问题] 关闭于 2014-09-28 10:36

      if (this.InvokeRequired)
                        {
                            this.Invoke(new MethodInvoker(delegate
                            {
                                this.panel2.Controls.Add(p2);
                                this.panel2.Update();
                            }));  //将控件添加到当前窗体
                        }

为什么进入if语句就不出来了,界面也卡在了,求助大神

孜孜不倦2014的主页 孜孜不倦2014 | 初学一级 | 园豆:9
提问于:2014-09-25 16:56
< >
分享
所有回答(4)
0

没报栈溢出?

Firen | 园豆:5385 (大侠五级) | 2014-09-25 17:24

没有错误提示啊

支持(0) 反对(0) 孜孜不倦2014 | 园豆:9 (初学一级) | 2014-09-25 19:42
0

1、断点你的if语句块,是否有进入?

2、断点你的代理函数,是否有进入?

3、断点你的Update函数,是否有进入?

估计是堆栈溢出了。

519740105 | 园豆:5810 (大侠五级) | 2014-09-25 17:47

if语句进入就程序就了死了,也没报错误啊

支持(0) 反对(0) 孜孜不倦2014 | 园豆:9 (初学一级) | 2014-09-25 21:26

@孜孜不倦2014: 

是说  this.InvokeRequired 的获取就死了?

如果这样,把你的代码贴出来吧。

支持(0) 反对(0) 519740105 | 园豆:5810 (大侠五级) | 2014-09-26 08:30
0

把这个if事件封装成方法,用多线程试下

唯我独萌 | 园豆:537 (小虾三级) | 2014-09-26 08:26
0

肯定是其他地方锁住了

我只是搬运工 | 园豆:308 (菜鸟二级) | 2014-09-26 09:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册