读书人

winform 透过反射执行方法

发布时间: 2013-06-25 23:45:41 作者: rapoo

winform 通过反射执行方法
我有一个MDI父窗体A,打开了一个子窗体B,在B窗体里通过ShowDialog打开了一个窗体C
窗体B里有一个方法Refresh()
A、B、C 都继承一个窗体FrmBase
我想在窗体C里通过反射执行B里的方法Refresh()

--------------

肯定有人会问,C就是B的子窗体,直接传参就可以执行
但在的问题是不是只有通过B才能打开C,还可以通过其他的窗体打开C
不过他们都继承FrmBase

能否在FrmBase写一个反射的方法直接B里的方法Refresh()呢
要求:需要验证B是否已经打开

winform 透过反射执行方法
[解决办法]
有那个必要吗,你将B的实例传给C,c里面直接用就是了,或者用委托去搞,别以为反射是什么好东西,也别以为用了反射的程序就牛
[解决办法]
使用委托!比反射好
[解决办法]

引用:
引用:有那个必要吗,你将B的实例传给C,c里面直接用就是了,或者用委托去搞,别以为反射是什么好东西,也别以为用了反射的程序就牛

现在的问题就是B是一个首页面,不可关闭的,可以从B打开C 这样是传实例的
但是也可以从其他的窗体打开C 就不能传B的实例了 但是也需要执行B里的方法

现在就是所有的窗体都继承了FrmBase 不知道……

既然可以打开c,就自定义事件,zaia中绑定不就行了
[解决办法]
窗体间传值问题。。
[解决办法]
可以绑定委托事件
[解决办法]
委托比反射好,反射速度比较慢,而且稳定行不好。

读书人网 >C#

热点推荐