Пример #1
0
        public void DockTo(string parentName, DockPanelState state, int size)
        {
            DevExpress.XtraBars.Docking.DockPanel parentPanel;
            if (string.IsNullOrEmpty(parentName))
            {
                parentPanel = null;
            }
            else
            {
                parentPanel = _dockingManager.Panels[parentName];

                if (parentPanel != null && parentPanel.Visibility == DockVisibility.Hidden)
                {
                    parentPanel = null;
                }
            }
            DevExpress.XtraBars.Docking.DockingStyle style = DockHelper.MapWindowToDevExpress(((IDockPanelView)_control).DefaultDock);
            if (style == DockingStyle.Fill)
            {
                style = DockingStyle.Float;
            }

            DevExpress.XtraBars.Docking.DockPanel panel = null;
            if (parentPanel == null)
            {
                panel = _dockingManager.AddPanel(style);
            }
            else
            {
                panel = parentPanel.AddPanel();
            }
            panel.Name   = ((IDockPanelView)_control).DockName;
            panel.Header = ((IDockPanelView)_control).Caption;
            panel.Image  = ((IDockPanelView)_control).Image;
            //panel.Dock = DockHelper.MapWindowToDevExpress(((IDockPanelView)_control).DefaultDock);
            panel.FloatSize = ((IDockPanelView)_control).DefaultSize;
            _control.Dock   = DockStyle.Fill;
            panel.TabText   = ((IDockPanelView)_control).Caption;
            panel.Text      = ((IDockPanelView)_control).Caption;
            panel.Controls.Add(_control);


            //    if (parentPanel != null)
            //    {
            //        parentPanel.Controls.Add(panel);
            //    }

            //else
            //{
            //    _dockingManager.AddPanel(panel.Dock, panel);
            //}
        }
Пример #2
0
        private DockPanel CreatePanel(DockingStyle style)
        {
            foreach (DockPanel panel in dockManager.Panels)
            {
                if (panel.Dock == style)
                {
                    // todo: allow plugin developer to specify other orientations:
                    // if we call dockManager.AddPanel(style), we would create a vertical split
                    // if we call panel.AddPanel, we create a horizontal split.

                    // create a new tab.
                    var newPanel = panel.AddPanel();
                    if (panel.ParentPanel != null)
                    {
                        panel.ParentPanel.Tabbed = true;
                    }

                    return(newPanel);
                }
            }

            return(dockManager.AddPanel(style));
        }
Пример #3
0
        private DockPanel DockTo(string parentName, IDockPanelView view)
        {
            DevExpress.XtraBars.Docking.DockPanel parentPanel;
            if (string.IsNullOrEmpty(parentName))
            {
                parentPanel = null;
            }
            else
            {
                parentPanel = _dockingManager.Panels[parentName];

                if (parentPanel != null && parentPanel.Visibility == DockVisibility.Hidden)
                {
                    parentPanel = null;
                }
            }
            DevExpress.XtraBars.Docking.DockingStyle style = DockHelper.MapWindowToDevExpress(view.DefaultDock);
            if (style == DockingStyle.Fill)
            {
                style = DockingStyle.Float;
            }

            DevExpress.XtraBars.Docking.DockPanel panel = null;
            if (parentPanel == null)
            {
                panel = _dockingManager.AddPanel(style);
            }
            else
            {
                panel = parentPanel.AddPanel();
            }
            panel.Name   = view.DockName;
            panel.Header = view.Caption;
            panel.Image  = view.Image;
            //panel.Dock = DockHelper.MapWindowToDevExpress(((IDockPanelView)_control).DefaultDock);
            panel.FloatSize      = view.DefaultSize;
            ((Control)view).Dock = DockStyle.Fill;
            panel.TabText        = view.Caption;
            panel.Text           = view.Caption;
            panel.Controls.Add((Control)view);
            return(panel);
        }