注册 登录
编程论坛 C# 论坛

如何实现c#子窗口的自定义排列

lianjiecuowu 发布于 2013-12-28 18:40, 719 次点击
自定义函数,如果不适用MdiLayout布局子窗口,如何实现子窗口自定义排列,比如按照3行2列在父窗口中排列,像下面的排列效果
只有本站会员才能查看附件,请 登录
3 回复
#2
wangnannan2014-01-10 08:44
第三方应该可以实现 用自带的话  我暂时只想到一个办法
通过IP定位主窗体左上角  然后计算四个子窗体的定位坐标布局
我先写个DEMO试试 成功了 上传你看看是否对你有帮助
#3
lianjiecuowu2014-01-10 13:55
回复 2楼 wangnannan
[SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.UnmanagedCode)]
        protected override void WndProc(ref Message m)
        {
            if (m.Msg == (int)Win32.Msgs.WM_LBUTTONDBLCLK)
            {
                base.WndProc(ref m);

                int index = HitTest();
                if (DockPane.DockPanel.AllowEndUserDocking && index != -1)
                {
                    IDockContent content = Tabs[index].Content;
                    if (content.DockHandler.CheckDockState(!content.DockHandler.IsFloat) != DockState.Unknown)
                        content.DockHandler.IsFloat = !content.DockHandler.IsFloat;
                }

                return;
            }

            base.WndProc(ref m);
            return;
        }
,额,那个我已经解决掉了,请问这个可以改成双击变为最大化吗,我试了好多都不行,不知道怎么搞的
#4
wangnannan2014-01-10 14:35
说实话你这段代码我还真是看不懂啥意思 如果有源程序我可以试着研究一哈
1