在a窗体的button按下去的时候,调用b窗体上的方法刷新b窗体上的DataGird,给个思路,谢谢

解决方案 »

  1.   

    在b窗体写一个公有的方法,把b传给a,在a里直接调用这个方法就可以了。比如:public class a
    {
      private b _frmb=null;  public a(b  poB)
      {
       _frmb=poB//或者建一个属性传进来;
       }
      
      private btn_Click(sender,e)
      {
      if (_frmb!=null)
        _frmb.ExeAction();
      }
    }public class b
    {
      public void ExeAction()
     {
      //codes;
      }
    }
      

  2.   

    或将刷新b窗体上的DataGird的方法添加到a窗体的button点击Event的委托中。
      

  3.   

    谢谢。。已经搞定方法比较简单。把代码贴出来方便和我一样的菜鸟们。呵呵在父窗口中首先实例化子窗口
    //父窗口.cs
    game frm=new game();
    //这里可以将参数传入子窗口
    frm.idstr=m_Table.Rows[this.gamegird.CurrentRowIndex][0].ToString();//这里很关键我认为
    frm.lform=this;
    frm.Show();//子窗口.cs
    记得要在子窗口中
    public string idstr;
    另外在子窗口中public一个父窗口对象
    public mainform lform;在子窗口的事件中现在可以调用父窗口的事件了this.lform.g_list_show(0,"");g_list_show是我父窗口中重建DataGird的方法我验证刷新成功。