首页 新闻 会员 周边 捐助

winfom难题,弹出框

0
[已解决问题] 解决于 2012-11-29 21:29

form中有两个或多个datagridview 想要再加载的时候在每个datagridview中间提示...(数据正在加载中....)该怎样处理。。大牛进

彬彬@科比的主页 彬彬@科比 | 初学一级 | 园豆:43
提问于:2012-11-26 22:00
< >
分享
最佳答案
0

首页你要实现winform的类似web里的遮罩层效果控件,博客园很多http://www.cnblogs.com/xiaofengfeng/archive/2012/02/01/2334404.html这里有一个就比较好。

控件有了之后,如果要同时展示多个就可以考虑用线程池。否则用个BackgroundWorker就可以。

主要代码:

//显示弹出窗

 ThreadPool.QueueUserWorkItem((o) =>
            {
                //
                  执行数据调用(耗时操作)      
//更新UI       
   Invoke(new Action(()=>                                       {                                           // 隐藏\关闭弹出窗                                      }));
            });
如果是用BackgroundWorker那就更不用说了吧
奖励园豆:5
RyanCheng | 菜鸟二级 |园豆:474 | 2012-11-27 10:46

那要具体定位到多个datagridview的中间要怎么处理。。可否给个实例???

彬彬@科比 | 园豆:43 (初学一级) | 2012-11-27 21:24

@彬彬@科比: 把多个datagridview放到一个panel里面,然后你弹出来的显示在panel的中间位置应该可以吧

RyanCheng | 园豆:474 (菜鸟二级) | 2012-11-29 09:42
其他回答(3)
0

加多线程啊。。或者用线程组件  BackgroudWorker 或 线程池 等。。。

在 水 一 方 | 园豆:1097 (小虾三级) | 2012-11-27 09:28

有没有实例??每个datagridview中间都要的。。而且加载完成后祛除提示。。。,,说具体点吧

支持(0) 反对(0) 彬彬@科比 | 园豆:43 (初学一级) | 2012-11-27 10:04

@彬彬@科比: 那就用BackgroundWorker 园子里有很多这方面的实例、、

支持(0) 反对(0) 在 水 一 方 | 园豆:1097 (小虾三级) | 2012-11-27 10:09
0

两个线程.一个线程显示正在读取数据

另一个去读数据,读到数据后通知第一个线程显示出来

只会造轮子 | 园豆:2274 (老鸟四级) | 2012-11-27 15:21
0

问题解决了吗,我要需要。。。

1行受影响 | 园豆:113 (初学一级) | 2012-11-27 16:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册