在C#桌面应用程序中创建一个主窗口,把窗口作为桌面,其他子窗口显示在主窗口之上,而且只能在主窗口范围内显示,
就像VS2005一样 请问如何实现谢谢

解决方案 »

  1.   

    添加一个MDI窗体作为主窗体,其他都作为MDI子窗体~~
      

  2.   

    把主窗體的IsMdiChild屬性設為true;然後在 顯示另一個窗體的時候,(new)出新對象時 把這個對象的                    對象.MdiParent = this;就可以了,如:  Room RoomS =new RoomS();
                        RoomS.MdiParent = this;
      

  3.   

    mdi窗体,Server_online ol = new Server_online(ref session);
                ol.MdiParent = this;
                ol.Show();
      

  4.   

    MDI主窗体上不要放控件,否则控件会把子窗体遮住,主窗体只能放一个工具栏
      

  5.   


           public Form1()
            {
                InitializeComponent();
            }
            SqlConnection conn = new SqlConnection("database=gongzi;server=localhost;pwd=;uid=;");
            private void showchildform(Form child) //定义一个方法,显示子窗体
            {
                panel1.Controls.Clear();  //清空Panelmain上的所有控件            child.MdiParent = this;  //设置子窗体的MDI父窗体
                panel1.Controls.Add(child);//添加子窗体到Panelmain面板
                child.Dock = DockStyle.Fill;  //设置子窗体的具体布局
                child.Show();  //显示子窗体
            }        private void Form1_FormClosed(object sender, FormClosedEventArgs e)
            {
                Application.Exit();
            }        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
            {
                switch (e.Node.Text)
                {
                    case "在职人员资料":
                        ziliao bf = new ziliao();
                        showchildform(bf);
                        break;
                    case "单位数据汇总":
                        danweitongji cf = new danweitongji();
                        showchildform(cf);
                        break;
                    case "报表筛选查看及打印":
                        ziliaochakan zc = new ziliaochakan();
                        showchildform(zc);
                        break;
                    case "退休人员资料":
                        tuixiu tx = new tuixiu();
                        showchildform(tx);
                        break;
                        
                }
            }
    100分我要了~~哈哈哈
      

  6.   

    添加一个MDI窗体作为主窗体,其他都作为MDI子窗体~~顶
      

  7.   

    设置MDI窗体
    private void State_Judge()

    int Children_Count=this.MdiChildren.Length;
    for(int i=0;i<Children_Count;i++)
    {
    if(this.MdiChildren[i].WindowState==FormWindowState.Maximized )
    this.MdiChildren[i].WindowState=FormWindowState.Normal;
    } }
    private  bool GetInstanceState(string Frm_Name)
    {
    this.State_Judge();
    int Children_Count=this.MdiChildren.Length;
    for(int i=0;i<Children_Count;i++)
    {
    if (this.MdiChildren[i].Name==Frm_Name )

    this.MdiChildren[i].WindowState=System.Windows.Forms.FormWindowState.Normal;
    this.MdiChildren[i].Focus();
                        return true;
    }
    }
    return false;
    }只能打开一个窗体
    .MdiParent=this;