假如我有两个窗体 fromA fromB 在A 中写了一个方法 c1 在窗体B中如何调用窗体A 中的方法 c1

解决方案 »

  1.   

    FormA:
          formB fb=new form(this);
          fb.ShowDialog();
    FormB:
          Form1 f1;
          public Form2(Form1 f1)
          {
              this.f1 = f1;
              InitializeComponent();
          }
    //在FormB中就可以对Form1的对象f1进行操作了~
    //例如:在FormB获得Form1的c1方法,便是f1.c1()
      

  2.   


    谢谢 请问一下 如果操作 FormA 的属性 也一样么 比如说 text 属性 
    Form1 f1;
    f。text = "sssss";以及操作 FormA  中某控件的属性Form1 f1;
    f.lbl1.text = "sssss";
      

  3.   

    需要设置控件的属性,定义控件为public。这样实现是可以。但是这样做。你的2个窗体就关联性很强,耦合度高,这样的设计不好。不利于扩展升级。
      

  4.   


    FormA:
          FormB fb=new form(this);
          fb.ShowDialog();
    FormB:
          FormA fa;
          public Form2(FormA fa)
          {
              this.fa = fa;
              InitializeComponent();
          }
          private void button1_Click(object sender, EventArgs e)
          {
              fa.c1();    //调用FormA的c1方法
               fa.Text = "123";  //设置Form1的属性
              fa.lbl1.text = "sssss";
          }
      

  5.   

    fa.lbl1.text = "sssss";//不行 和5楼老大说的一样
    汗···
      

  6.   


    我这里还有个问题 是否可以给予解答 
    http://topic.csdn.net/u/20100613/21/3019191a-e114-477c-90d9-8d3fb530539b.html