错误:未将对象引用设置到对象的实例
代码:
                Form1 frm = new Form1();
                frm=(Form1)this.Owner;
                if (frm.richtextBox1.text!="")
                {
                }
错误出在if条件判断语句中,为什么frm在这里为空?

解决方案 »

  1.   

    错误出在:frm=(Form1)this.Owner; 
    this.owner是 获取拥有此窗体的窗体。显然,你这个form1是最顶层窗体了,哪个窗体还能拥有它呢?
    我想你是想想获取这个窗体本身吧:frm=(Form1)this;
      

  2.   

    frm=(Form1)this.Owner;这一句有问题吧。你可以设个断点检查一下。确定this.Owner不是null.
      

  3.   

        Form1 frm = new Form1(); 
                    frm=(Form1)this.Owner; 
                    if (frm.richtextBox1.text!="") 
                    { 
                    } 
    是子窗体的代码、
    你父窗体调用子窗体的时候   子窗体.show(this);
      

  4.   

    因为你的this.Owner没有值。。
    也就是你当前窗体不属于其它窗体
    其实你是想得到Owners窗体,你根本不需要new。
    直接Form frm =this.Owner
    如果你Owner有值,你引用它时不会有问题,如果没有值就会报错,
      

  5.   


    this.Owner出错,子窗体是否设置
    public partial class Form1 : Form 
        { 
            private void button1_Click(object sender, EventArgs e) 
            { 
                Form2 frm2 = new Form2(); 
                frm2.Show(this); 
            } 
        }     public partial class Form2 : Form 
        { 
            private void button1_Click(object sender, EventArgs e) 
            { 
                Form1 frm1 = (Form1)this.Owner; 
                ((TextBox)frm1.Controls["textBox1"]).Text = this.textBox2.Text; 
                this.Close(); 
            } 
        } 
      

  6.   

    Form2 frm2 = new Form2();
    frm2.Show(this);这一句为什么要加this?与不加有何区别,谢谢!
      

  7.   


    此处this指的是Form1 窗体,加了这个就说明Form1 拥有frm2,
    frm2.Owner就是Form1了
      

  8.   

    frm=(Form1)this.Owner;
    这句有问题