比如按一个按钮,将弹出一个查询窗口,母窗口将查询参数传给查询窗口,然后在查询窗口中进行查询之后把结果再返回给母窗口. 我用的是vs2005

解决方案 »

  1.   

    用模式窗体,主窗体存取查询窗体的属性,然后用ShowDialog()调用。
      

  2.   

    class 查询窗体:Form
    {
        public 属性:查询条件
        public 属性:查询结果
        private void 查询
    }
    主窗体中调用:查询窗体 查询1=new 查询窗体;
    查询1.查询条件 = XXXXXXX;  //自己写
    DialogResult DR = 查询1.ShowDialog();
    if (DR == DialogResult.OK)
    {
        返回 查询1.查询结果
    }
      

  3.   

    class 查询窗体:Form
    {
        public 属性:查询条件
        public 属性:查询结果
        private void 查询
    }
    主窗体中调用:查询窗体 查询1=new 查询窗体;
    查询1.查询条件 = XXXXXXX;  //自己写
    DialogResult DR = 查询1.ShowDialog();
    if (DR == DialogResult.OK)
    {
        返回 查询1.查询结果   //注意查询结果记录集合定义为static
    }
      

  4.   

    1、A打开模式窗口B,
    A的调用处取模式窗口返回值if (b.DialogResult == DialogResult.OK)
    {
        读取b的那个对象属性
    }
    b.dispose();2、观察者模式
    A实现一个接口,当B想给A传参数时调用A的这个接口方法
    1比较方便,2用到的方法需要参考<设计模式>
      

  5.   

    3、如果传回的是一个引用型的对象,如类、数组,还有一个简单方法
    在B窗口加一个带参的构造函数或把这个参数写成一个成员变量,A调用时把这个参数传给它,B直接改变这个参数值就可以了
      

  6.   

    flygoldfish(长江支流)的方法不错我就是经常用此方法
      

  7.   

    写过这方面的文章,供楼主参考,
    http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx