DockContainer Class
Represents a dock container that can hold tool windows or other dock containers.
public abstract class DockContainer : UIControl, IUIControl, IUIElement, ILogicalTreeNode, IDpiAwareElement, IDisposable, IDockObject
- Inheritance:
- object MarshalByRefObject Component Control ScrollableControl UIControl object
Constructors
DockContainer()
Initializes an instance of the class.
public DockContainer()
Properties
DockManager
The DockManager that is managing the dock object.
DockObjectType
A DockObjectType specifying the type of dock object.
RootDock
The DockStyle that describes the root's dock style.
SelectedToolWindow
The selected ToolWindow.
public virtual ToolWindow? SelectedToolWindow { get; set; }
Property Value
Remarks
This method may only be called if the DockObjectType is ToolWindowContainer or AutoHideContainer.
ToolWindows
The collection of child ToolWindow controls.
Methods
ArrangeOverride(Size)
Positions child elements and determines an arrange size.
protected override Size ArrangeOverride(Size finalSize)
| Parameter | Type | Description |
|---|---|---|
| finalSize | Size | The final area within the parent that this element should use to arrange itself and its children. |
Returns
- Size:
The actual size used.
Remarks
Element authors should override this method, call Arrange(Rectangle) on each visible child element and position each child element. It is required that a parent element calls Arrange(Rectangle) on each child or they won't be rendered.
Close()
Closes all the tool windows in the DockContainer.
public abstract void Close()
Remarks
This method may only be called if the DockObjectType is ToolWindowContainer or AutoHideContainer.
ContainsToolWindow(string[])
Returns whether the container or one of its children contains a ToolWindow with any of the specified GUIDs.
protected abstract bool ContainsToolWindow(string[] guids)
| Parameter | Type | Description |
|---|---|---|
| guids | string[] | The array of GUIDs. |
Returns
- bool:
trueif the container or one of its children contains a ToolWindow with any of the specified GUIDs; otherwise,false.
CreateChildren()
Invoked when the collection of child elements is to be created.
protected override IList<ILogicalTreeNode> CreateChildren()
Returns
- IList<ILogicalTreeNode>:
The list that should be assigned to the Children property.
Remarks
By default, no child collection is created.
Dispose(bool)
Releases the unmanaged resources used by the Control and its child controls and optionally releases the managed resources.
protected override void Dispose(bool disposing)
| Parameter | Type | Description |
|---|---|---|
| disposing | bool |
|
GetToolWindowCount()
Returns the number of ToolWindow objects within the container or its child controls.
HitTestForDock(Point)
Hits tests a Point to see if a dock should occur.
protected virtual DockStyle HitTestForDock(Point point)
| Parameter | Type | Description |
|---|---|---|
| point | Point | The Point to test. |
Returns
MeasureOverride(Graphics?, Size)
Measures the size in layout required for child elements and determines a size for the element itself.
protected override Size MeasureOverride(Graphics? g, Size availableSize)
| Parameter | Type | Description |
|---|---|---|
| g | Graphics | The Graphics object to use for measurement. |
| availableSize | Size | The available size that this element can give to child elements. Infinity can be specified as a value to indicate that the element will size to whatever content is available. |
Returns
- Size:
The size that this element determines it needs during layout, based on its calculations of child element sizes.
Remarks
Element authors should override this method, call Measure(Graphics?, Size) on each visible child element and determine the total size required.
OnDockChanged(EventArgs)
Raises the DockChanged event.
protected override void OnDockChanged(EventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | EventArgs | An EventArgs that contains the event data. |
OnEnter(EventArgs)
Raises the Enter event.
protected override void OnEnter(EventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | EventArgs | An EventArgs that contains the event data. |
OnLeave(EventArgs)
Raises the Leave event.
protected override void OnLeave(EventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | EventArgs | An EventArgs that contains the event data. |
OnRender(PaintEventArgs)
Renders the element.
protected override void OnRender(PaintEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | PaintEventArgs | The event data. |
ProcessCmdKey(ref Message, Keys)
Processes a command key.
protected override bool ProcessCmdKey(ref Message m, Keys keyData)
| Parameter | Type | Description |
|---|---|---|
| m | Message | |
| keyData | Keys | One of the Keys values that represents the key to process. |
Returns
- bool:
trueif the character was processed by the control; otherwise,false.
Undock()
Undocks the DockContainer.
public abstract void Undock()
Remarks
This method may only be called if the DockObjectType is ToolWindowContainer or AutoHideContainer.
UpdateImageList()
Updates the ImageList used with the container.
protected virtual void UpdateImageList()
UpdateLayout()
Call this method to ensure that the whole subtree of elements that includes this UIElement is properly updated.
public override void UpdateLayout()
Remarks
This ensures that UIElement objects with invalid measure or arrange states will get a call to their Measure(Graphics?, Size) and Arrange(Rectangle) methods, and all computed sizes will be validated. This method does nothing if layout is clean but it does work if layout is not clean so avoid calling it after each change in the element tree. It makes sense to either never call it (system will do this in a deferred manner) or only call it if you absolutely need updated sizes and positions after you do all changes.
UpdateTabStrip()
Updates the TabStrip used within the container.
protected virtual void UpdateTabStrip()
UpdateTitleBar()
Updates the title bar.
protected abstract void UpdateTitleBar()
Inherited Members
- UIControl.AddPendingGraphicsInversion(Rectangle)
- UIControl.AddPendingScrollOperation(Rectangle, Orientation, int)
- UIControl.AddPendingScrollOperation(Rectangle, int, int)
- UIControl.AddToInvalidatedRegion()
- UIControl.AddToInvalidatedRegion(Rectangle)
- UIControl.Arrange(Rectangle)
- UIControl.ContainsLocation(Point)
- UIControl.DpiScaleChanged(SizeF)
- UIControl.GetCursor(Point)
- UIControl.HitTest(PointHitTestParameters, Func<IUIElement, PointHitTestParameters, bool>)
- UIControl.HitTestRecursive(PointHitTestParameters, Func<IUIElement, PointHitTestParameters, bool>)
- UIControl.Invalidate(InvalidationLevels, InvalidationTypes)
- UIControl.InvalidateArrange()
- UIControl.InvalidateMeasure()
- UIControl.Measure(Graphics, Size)
- UIControl.OnClick(EventArgs)
- UIControl.OnDoubleClick(EventArgs)
- UIControl.OnDpiChangedAfterParent(EventArgs)
- UIControl.OnHandleCreated(EventArgs)
- UIControl.OnLayout(LayoutEventArgs)
- UIControl.OnLocationChanged(EventArgs)
- UIControl.OnMouseCaptureChanged(EventArgs)
- UIControl.OnMouseDown(MouseEventArgs)
- UIControl.OnMouseEnter(EventArgs)
- UIControl.OnMouseHover(EventArgs)
- UIControl.OnMouseLeave(EventArgs)
- UIControl.OnMouseMove(MouseEventArgs)
- UIControl.OnMouseUp(MouseEventArgs)
- UIControl.OnMouseWheel(MouseEventArgs)
- UIControl.OnPaint(PaintEventArgs)
- UIControl.OnPaintBackground(PaintEventArgs)
- UIControl.OnParentChanged()
- UIControl.OnParentChanged(EventArgs)
- UIControl.OnRenderChildElements(PaintEventArgs)
- UIControl.OnResize(EventArgs)
- UIControl.OnRightToLeftChanged(EventArgs)
- UIControl.OnVisibleChanged(EventArgs)
- UIControl.Render(PaintEventArgs)
- UIControl.ResetDoubleBufferCanvas(bool)
- UIControl.ResumePainting()
- UIControl.SuspendPainting()
- UIControl.TransformToAncestor(IUIElement)
- UIControl.TransformToDescendant(IUIElement)
- UIControl.UpdateCursor()
- UIControl.UpdateCursor(Point)
- UIControl.ActualHeight
- UIControl.ActualWidth
- UIControl.BackColor
- UIControl.BackgroundImage
- UIControl.CaptureMouseWhenPressed
- UIControl.ClipBounds
- UIControl.DesiredSize
- UIControl.DpiScaleFactor
- UIControl.Font
- UIControl.ForeColor
- UIControl.IsArrangeValid
- UIControl.IsMeasureValid
- UIControl.IsPaintValid
- UIControl.IsRightToLeft
- UIControl.LastMouseUpButton
- UIControl.PaintingSuspended
- UIControl.UseControlGraphicsForMeasure
- UIControl.UseExtendedDoubleBuffering
- MarshalByRefObject.GetLifetimeService()
- MarshalByRefObject.InitializeLifetimeService()
- MarshalByRefObject.MemberwiseClone(bool)
- object.GetType()
- object.MemberwiseClone()
- object.ToString()
- object.Equals(object)
- object.Equals(object, object)
- object.ReferenceEquals(object, object)
- object.GetHashCode()