private void button1_click(~~~~)
{
  if(form1==null) 
  {
    form1 = new Form1();
  }
   form1.Show();
}在form1及各个窗体的Closing事件中将form1隐藏

解决方案 »

  1.   

    你可以考虑用面板(panel),将希望的不同窗体的控件放置于不同的面板之中,点击按钮时显示所需的面板,隐藏不希望的面板就行了。
      

  2.   

    给你做了个示例,不知是不是这个意思
    http://bbsnt.ntsun.com/form_ex.rar
      

  3.   

    谢谢fafan(Hello World!) 但我不是要求那样的效果,我是希望打开form2时,form1就没有,form2在原来form1的位置上,就好象在同一个窗口的效果。