Brewmaster.Layout.LayoutHandler.DockPanel C# (CSharp) Метод

DockPanel() публичный Метод

public DockPanel ( FloatPanel panel ) : void
panel FloatPanel
Результат void
		public void DockPanel(FloatPanel panel)
		{
			if (DockSuggestion == null) return;

			panel.SuspendLayout();
			_form.SuspendLayout();
			if (DockSuggestion.LayoutSplit != null)
			{
				var panelSize = panel.Size;
				var multiSplitParent = DockSuggestion.LayoutSplit.Parent as MultiSplitContainer;

				if (multiSplitParent != null)
				{
					AddPanelToSplitContainer(multiSplitParent, panel.ChildPanel, DockSuggestion.LayoutSplit.Index);
				}
			}
			else if (DockSuggestion.JoinPanel is IdeGroupedPanel groupedPanel)
			{
				groupedPanel.AddPanel(panel.ChildPanel, true);
			}
			else
			{
				JoinPanels(DockSuggestion.JoinPanel, panel.ChildPanel);
			}
			_form.ResumeLayout();
			panel.ResumeLayout();
			panel.Close();
			panel.Dispose();

			_form.Focus();
			DockSuggestion = null;
		}

Usage Example

Пример #1
0
 protected override void OnResizeEnd(EventArgs e)
 {
     base.OnResizeEnd(e);
     if (_dragging)
     {
         LayoutHandler.DockPanel(this);
     }
     TopMost   = false;
     _dragging = false;
 }