我在一个函数中创造了一个控件,怎么把它显示到主窗口上?
他编译能通过,不过运行的时候显示:未将对象引用设置到对象的实例。
大哥们帮帮忙

解决方案 »

  1.   

    你创建的控件后,要把控件添加到容器中,例如Form:private void createButton(string btnName)
    {
       Button btn=new Button();
       btn.Name=btnName;
       Form1.Controls.add(btn);
    }
      

  2.   

    就是添加的时候出问题,下面是代码                DataGridView[] account_grid = new DataGridView[Controls_num];
                    TabPage[] account_tab = new TabPage[Controls_num]; 
                    for (int i = 0; i < Controls_num; i++)
                    {
                        account_tab[i] = new TabPage();
                        account_grid[i] = new DataGridView();                    forum_main.f_m.tabControl1.Controls.Add(account_tab[i]);
                        account_tab[i].Controls.Add(account_grid[i]);
                    }
      

  3.   

    forum_main.f_m.tabControl1.Controls.Add(account_tab[i]);
    这一行出错
      

  4.   

    forum_main  f_m   tabControl1
    错误都定位了,继续看看上面是那个对象为null
      

  5.   

    说明一下,这个函数不在主窗口里面的,我另外弄通了一个class文件
      

  6.   


    tabControl1这个控件是直接添加的,似乎不会有问题啊
      

  7.   

    forum_main你没有传过来,或forun_main.f_m这个属性没有设置
      

  8.   

    forum_main你有传送吗?是不是这个为null?
      

  9.   


    主窗口里面是这么写的public static forum_main f_m = null;