窗口A中  变量 a窗口B中  变量b  想取得a中的值即 想实现   b=a;执行时 提示   a没有实例化,怎么解决?

解决方案 »

  1.   

    首先确定谁调用谁,现在假设在FormA中以对话框方式显示FormB。
    FormB dlg = new FormB( FormAObject );//在构造函数中传入FormAObject对象或FormA中对象a的对象,然后在FormB中获取。
      

  2.   

    楼主是想在A窗口上打开B窗口,也把参数传到B窗口吗?
    如果是这样的,你可以在B窗口的类中定义一个Public 类型
    在B窗口的实例化函数中带一个参数。A窗口实列化B时,把参数带过去就行
      

  3.   

    你可以下愚翁的blog,有过这样的
    http://blog.csdn.net/knight94/
      

  4.   

    在A中
    public string a;
    在B里
    A a1 =new A();
    b=a1.a;
      

  5.   

    这个问题问的人太多了,最好不用public方法访问
    可以用构造函数的方式把a变量值带到b中
      

  6.   

    没有实例化就去new一个实例就OK了。
      

  7.   

    ref:
    http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx
      

  8.   

    private static Form1 FormDefInstance;
    private string pName="";
    //调用Form1时,现检查Form1的实例是否存在
    public Form1 DefInstance
    {
    get
    {
    if(FormDefInstance==null)
    {
    MessageBox.Show("a没有实例化");
    FormDefInstance=new Form1() ;//也可做其它处理
    DefInstance=FormDefInstance;
    }
    set
    {
    FormDefInstance = value;
    }
    }
    public string f1Name
    {
    get{return pName;}
    set{pName=value;}
    }
    //////假设Form2也有name属性
    private string pname="";
    private string Name
    {
    get{return pname;}
    set{pname=value;}
    }
    测试调用Form1里的属性值
    Form1 form ;
    this.pname =form.DefInstance.f1Name;
      

  9.   

    谢谢大家 问题解决了 http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx  很有帮助在jack_man_(我的偶像:愚翁) 给的blog里找到点别的有用的东西 3Q ^_^
      

  10.   

    谢谢大家 问题解决了 http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx  很有帮助在jack_man_(我的偶像:愚翁) 给的blog里找到点别的有用的东西 3Q ^_^