我想用C#做一个多文档的例子,具体问题如下,
我想把这个程序做成多文档的,就是一个项目中的一个窗体作为住窗体,其他项目中 的窗口都作为它的子窗体显示,不知道这样可不可以实现,还有,单个项目中的窗体变为多文档怎么实现呀,找了半天没有找到

解决方案 »

  1.   


    parent.IsMidContainer = true;
    /////
    ChildForm child = new ChildForm();
    child.ParentForm = parent;
    child.ShowDialog();
      

  2.   

    http://michaellu.cnblogs.com/archive/2005/11/17/260903.html
      

  3.   

    ChildForm child = new ChildForm();
    child.ShowDialog();
      

  4.   

    恩,这个方法是可以 的,不过这个只是适合一个项目的情况,如果是多个项目的话就不行了在多个项目的时候就遇到这样的问题:
    如果把本工程中的其他窗体作为子窗体是可以的,但是要把别的工程(DLL)中的的窗体作为子窗体显示就不行了,这是为什么呀
      

  5.   

    Property or indexer 'System.Windows.Forms.ContainerControl.ParentForm' cannot be assigned to -- it is read only//具体的错误如上:
    好象说它的父窗体的属性是只读的,具体是什么原因呀,是不是他的系统设置的就是这样呀
      

  6.   

    ChildForm c = new ChildForm(); //子窗口定义
    c.ParentForm = parent;         //设置交窗口
    c.ShowDialog();                //子窗口显示
      

  7.   

    除主项目以外,其他项目全部改成“类库”输出而不是“Windows应用程序”主项目引用所有其他项目然后就可以直接 new 其他项目里的窗体、放到自己窗口里面了
      

  8.   

    “放到自己窗口”,我的意思是:设计主项目的窗口时,IsMdiContainer 设为 true加载其它项目的窗口:Form form = 项目命名空间.项目窗体类名();
    form.MdiParent = this;
    form.Show();
      

  9.   

    if(! this.IsExistChildForm("frmShow")) 


    childForm.MdiParent = this;
    childForm.Name = "frmShow";
    childForm.QueryString=null;    //装载时不执行查询
    childForm.Show(); 
    }