关于C#反射调用刷新父窗体问题

各位老师,我遇到的难题是这样:一个窗体通过反射调用方式调出另一个窗体(特别说明:是个dll,且与父窗体不是同一个项目中的,调用方式也不能用showdialog方式,所以父... 各位老师,我遇到的难题是这样:
一个窗体通过反射调用方式调出另一个窗体(特别说明:是个dll,且与父窗体不是同一个项目中的,调用方式也不能用showdialog方式,所以父窗体接收不到DialogResult),我想在子窗体中修改数据库值后,父窗体将自动刷新相应控件的值。
展开
 我来答
lxf_120
2010-12-22 · TA获得超过250个赞
知道小有建树答主
回答量:448
采纳率:0%
帮助的人:219万
展开全部
我觉得你说的子窗体是反射出来的,那么你应该是将它转化为一个form再调用showdialog吧,否则它怎么弹出来呢,你的意思是用show()?
子窗体修改数据库的值后,父窗体要自动刷新应该要有个类似通知的机制得到消息,
传统的方案有
1. 子窗体有父窗体的句柄或是引用,调用父窗体的刷新方法
2.父窗体上设有消息接口的实现,子窗体向消息队列发送消息,
3.或是父窗体邦定一个到子窗体上一个数据更新的事件.
4.通过windows api发送消息
5.父窗体上设有定时器,自动刷新服务数据
6. 其他 网络通讯端口.....
那么这要看你的方案中,应该采用哪种机制比较合适,我觉得如果你这个dll最好有个接口,这个接口实现两个方法
interface Imsg{
Show(); // 调用 弹出窗口
event changed; //数据更新后触发事件
}
这样的话你的父窗体就爽爽的了,只靠这两个方法就可以实现你所要的效果了
恩 大概就是这个思路 具体你还有根据你的项目进行考虑
racoon_bear
2013-03-15 · TA获得超过166个赞
知道答主
回答量:55
采纳率:0%
帮助的人:19.4万
展开全部
父窗体,扔一个代理过去给子窗体,子窗体改完了,就调用一下这个代理。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
犀利还勤俭丶小猫0
2010-12-21 · 超过16用户采纳过TA的回答
知道答主
回答量:203
采纳率:0%
帮助的人:56.8万
展开全部
lg
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式