如果有一窗体为多文档窗体MDI的容器,如果有二个窗体A,B是从这个主窗体中同时实例化打开的,当我操作A时,想在B窗体接收一些参数做一些事情,当我操作B时可能想在A窗体中接收一些参数做一些事情,请问怎么将A,B关联起来??
谢谢。

解决方案 »

  1.   

    SecondForm f2= (SecondForm)this.MdiParent.MdiChildren[1];
    f2.PublicMethod(some_value_to_pass);
      

  2.   

    行为模式,具体可以是行为链,也可以是观察者模式。如果多个子窗体需要广播,用观察者模式,mdi父窗体定义事件,每个子窗体响应,同时,可以调用父窗体的方法触发事件广播给其他子窗体。如果只有2个窗体。1楼方法不就行了么。总之,获得彼此的引用就行了。随便你如何做,A,B中各包含一个Form类型的引用指向对方,或直接定义对方类型的引用,创建后由mdi父窗体赋值,调用即可。