首页 新闻 搜索 专区 学院

求助,winform中,新增记录后,刷新数据列表窗体

0
悬赏园豆:200 [已解决问题] 解决于 2012-08-01 13:00

具体是这样的,有3个窗体如下:

1、主窗体mdi窗体 :mainFrm
2、子窗体1 :listFrm 有个datagridview控件显示列表
3、子窗体2 :newFrm 新增记录

如何实现在mainFrm中 listFrm不关闭的情况下,当newFrm中保存完后,刷新listFrm中datagridview的数据?尝试了好多方法,都没搞定,好菜啊,求帮助求帮助!!!!

lnkDel的主页 lnkDel | 初学一级 | 园豆:44
提问于:2012-07-31 20:46
< >
分享
最佳答案
0

直接事件搞定就行了。你新增的时候,后台肯定是有一个list类的集合,你是往这里面增加。你自己新增一个事件委托,当这个集合新增数据的时候触发。然后你的第一个界面上面绑定这个事件。这样你第二个界面新增东西的时候,自然会触发第一个界面

收获园豆:100
BLoodMaster | 初学一级 |园豆:135 | 2012-08-01 10:49

补充下,别用楼上一些什么刷新之类的思想。记住你的是native程序,别搞得和bs的页面一样。那个是因为很多受制于bs架构,很多没办法。桌面程序,就要有自己的效率优势

BLoodMaster | 园豆:135 (初学一级) | 2012-08-01 10:51

嗯,同意你的观点,跟@LowerAI 说的意思大致相同,我捣腾了一上午也没捣出来,真是无语,每次都觉得就差那么一点点。

还有,怎么给分啊,难道非要点结贴?

lnkDel | 园豆:44 (初学一级) | 2012-08-01 12:32
其他回答(8)
0

事件,用事件搞定

收获园豆:10
Lukexywang | 园豆:178 (初学一级) | 2012-07-31 21:08

能详细些吗?最好能写个实例看看效果,我之前也认为很easy,结果搞了好几个小时也没搞定。

现在暂时曲线救国了一下,把mdi里面的窗体都关了,然后重新打开listFrm,但觉得很土,决定明天继续,休息一下,明天来。

支持(1) 反对(0) lnkDel | 园豆:44 (初学一级) | 2012-07-31 21:16
0

这3个之间应该是有关系的,找到这个关系就ok了啊。

收获园豆:10
chenping2008 | 园豆:9836 (大侠五级) | 2012-07-31 21:42
0

这个问题应该不难吧!你把这几个窗体,和相关的控件之间的关系搞清楚,通过对应的操作事件来响应你的操作!!

1、主窗体mdi窗体 :mainFrm
2、子窗体1 :listFrm 有个datagridview控件显示列表
3、子窗体2 :newFrm 新增记录(新增成功后,是否自动关闭这个窗体?是:则在关闭的时间获取listFrm 的datagridview控件,清空当前的数据后,再重新绑定一下数据。。。。。)

收获园豆:10
Angkor--:-- | 园豆:1086 (小虾三级) | 2012-07-31 22:59
0

在newFom中定义一个保存完成的事件并在保存成功的时候触发,在listForm中注册该事件并编写相应的事件处理函数,至于事件怎么定义怎么触发请使用园子的搜索功能。

收获园豆:50
LowerAI | 园豆:562 (小虾三级) | 2012-08-01 07:22

嗯,感觉这个思路不错,待会儿有空试试,谢谢。

各位高手,如果有处理过这种情况的,说说您的处理方式,帮帮忙吧

支持(0) 反对(0) lnkDel | 园豆:44 (初学一级) | 2012-08-01 09:13
0

如果还没搞定的话,那加我Q吧,我刚做了个示例,应该是你想要的。503697906

icyme | 园豆:77 (初学一级) | 2012-08-01 10:20

不好意思,没主意到您的回复,就结贴了,下次一定仔细些

支持(0) 反对(0) lnkDel | 园豆:44 (初学一级) | 2012-08-01 13:02
0
收获园豆:10
az235 | 园豆:8283 (大侠五级) | 2012-08-01 10:39
0

通过主窗体去刷新子窗体

收获园豆:10
Tom.汤 | 园豆:1975 (小虾三级) | 2012-08-01 12:18
0

子窗体自定义一个委托,父窗体在子窗体保存数据里调用即可同步数据。

.NET快速开发框架 | 园豆:914 (小虾三级) | 2012-08-01 13:00
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册