示例#1
0
 private void ParentForm_ResizeEnd(object sender, EventArgs e)
 {
     if (_splitter != null)
     {
         _splitter.UpdateBounds();
     }
 }
示例#2
0
        private void PositionGroups()
        {
            DockStyle dockStyle;

            switch (DockArea)
            {
            default:
            case DarkDockArea.Document:
                dockStyle = DockStyle.Fill;
                break;

            case DarkDockArea.Left:
            case DarkDockArea.Right:
                dockStyle = DockStyle.Top;
                break;

            case DarkDockArea.Bottom:
                dockStyle = DockStyle.Left;
                break;
            }

            if (_groups.Count == 1)
            {
                _groups[0].Dock = DockStyle.Fill;
            }
            else if (_groups.Count > 1)
            {
                var lastGroup = _groups.OrderByDescending(g => g.Order).First();

                foreach (var group in _groups.OrderByDescending(g => g.Order))
                {
                    group.SendToBack();

                    if (group.Order == lastGroup.Order)
                    {
                        group.Dock = DockStyle.Fill;
                    }
                    else
                    {
                        group.Dock = dockStyle;
                    }
                }

                SizeGroups();
            }

            UpdateMinimumSize();

            _splitter?.UpdateBounds();
        }
示例#3
0
 public void UpdateSplitterBounds()
 {
     _splitter?.UpdateBounds();
 }