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是否已经打开
------解决方案--------------------有那个必要吗,你将B的实例传给C,c里面直接用就是了,或者用委托去搞,别以为反射是什么好东西,也别以为用了反射的程序就牛
------解决方案--------------------使用委托!比反射好
------解决方案--------------------
既然可以打开c,就自定义事件,zaia中绑定不就行了
------解决方案--------------------窗体间传值问题。。
------解决方案--------------------可以绑定委托事件
------解决方案--------------------委托比反射好,反射速度比较慢,而且稳定行不好。