首页 新闻 会员 周边

MDI子窗体排序问题

0
悬赏园豆:50 [已解决问题] 解决于 2012-05-16 23:39

MDI主窗体中可以打开多个子窗体,假如这多个子窗体是两种类型的(一个类型假设叫ChildForm1,另一个类型假设叫ChildForm2),我们可以通过LayoutMdi对打开的所有子窗体进行排序,代码如下:

        private int i = 1;
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            var childForm1 = new ChildForm1 {MdiParent = this, TopLevel = false,Text = ""+i+"个窗体"};
            childForm1.Show();
            i++;
        }

        private void toolStripButton2_Click(object sender, EventArgs e)
        {
            var childForm2 = new ChildForm2 { MdiParent = this, TopLevel = false, Text = "" + i + "个窗体" };
            childForm2.Show();
            i++;
        }

        private void toolStripButton3_Click(object sender, EventArgs e)
        {
            //垂直平铺
            this.LayoutMdi(MdiLayout.TileVertical);
        }

        private void toolStripButton4_Click(object sender, EventArgs e)
        {
            //水平平铺
            this.LayoutMdi(MdiLayout.TileHorizontal);
        }

        private void toolStripButton5_Click(object sender, EventArgs e)
        {
            //层叠
            this.LayoutMdi(MdiLayout.Cascade);
        }

现在有个需求,假如打开多个ChildForm1和ChildForm2窗体后进行界面排序,选择垂直平铺时,ChildForm1必须在ChildForm2的上面,当选择水平平铺时,ChildForm1必须在ChildForm2的左面,当选择层叠时最先打开的在最外层。大牛帮帮忙。

LCM的主页 LCM | 大侠五级 | 园豆:6876
提问于:2012-05-04 14:54
< >
分享
最佳答案
0

唉,没找着方法

LCM | 大侠五级 |园豆:6876 | 2012-05-16 23:38
其他回答(3)
0

自己写方法判断现打开窗体类型

结合平铺或层叠模式设置对应样式

收获园豆:20
ERS | 园豆:728 (小虾三级) | 2012-05-04 15:06

能说得详细点吗?

“对应样式”是什么样式?

支持(0) 反对(0) LCM | 园豆:6876 (大侠五级) | 2012-05-04 15:09
0

你把窗體放到不同的2個列表中。然後 ,排序的時候,先排一個,接著排另一個哦。

收获园豆:20
無限遐想 | 园豆:3740 (老鸟四级) | 2012-05-04 15:35

你的意思是用两个列表做子窗口的容器,不用MDI窗体?

支持(0) 反对(0) LCM | 园豆:6876 (大侠五级) | 2012-05-04 16:05
0

你这个“打开多个ChildForm1和ChildForm2”他们都是相同的个数的吗?

收获园豆:10
木兰香 | 园豆:252 (菜鸟二级) | 2012-05-05 10:12

不是相同的个数的

支持(0) 反对(0) LCM | 园豆:6876 (大侠五级) | 2012-05-08 10:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册