我在Controls.Add( child ) 加入了一个子控件,然后在后面一个地方,我要把它从这里面移除,加入另一个父窗口里,应该怎么做呢,我用Controls.Remove(),都会销毁掉它,,然后再用child.Show(),就会出来它已经disposed的异常.

解决方案 »

  1.   

    remove当然就销毁了。
    你用load在加载一个进来试试。
    page.下有个loadCotrol的吧。试试
      

  2.   

    我想做到的就是把它从Controls里移除出来,但是别销毁它,该怎么做呢。。
      

  3.   


    Control temp=(Control)Controls[x]
    Controls.Remove();
    见笑
      

  4.   


    Control temp=(Control)Controls[x]
    Controls.Remove();但是Controls.Remove()会调用child.dispose方法,这样,我先前保存的temp就无效了,再使用它就会出出dispose的异常。