//------------------------------------------------------------------- public void AfterAdd(ControlContainerSplitter _split) { if (_split == null) { return; } if (SplitterDistance >= _split.Panel1MinSize && SplitterDistance <= _split.Width - _split.Panel2MinSize) { _split.SplitterDistance = SplitterDistance; } if (_split.Panel1.Controls.Count == 1) { if (Panel1SplitterDesc != null) { ControlContainerSplitter split = _split.Panel1.Controls[0] as ControlContainerSplitter; Panel1SplitterDesc.AfterAdd(split); } } if (_split.Panel2.Controls.Count == 1) { if (Panel2SplitterDesc != null) { ControlContainerSplitter split = _split.Panel2.Controls[0] as ControlContainerSplitter; Panel2SplitterDesc.AfterAdd(split); } } }
//------------------------------------------------------------------- public ControlContainerSplitter Rebuild() { ControlContainerSplitter split = new ControlContainerSplitter { Dock = DockStyle.Fill, Orientation = Orientation }; if (Panel1SplitterDesc != null) { split.Panel1.Controls.Add(Panel1SplitterDesc.Rebuild()); } else if (Panel1TabDesc != null) { split.Panel1.Controls.Add(Panel1TabDesc.Rebuild()); } if (Panel2SplitterDesc != null) { split.Panel2.Controls.Add(Panel2SplitterDesc.Rebuild()); } else if (Panel2TabDesc != null) { split.Panel2.Controls.Add(Panel2TabDesc.Rebuild()); } split.SplitterDistance = SplitterDistance; return(split); }