-
Notifications
You must be signed in to change notification settings - Fork 324
DockingManager
The DockingManager is the root of the visual tree and is the core control of AvalonDock. It contains core dependency properties, events, and methods to customize many aspects of the docking framework.
Public Dependency Properties:
Event | Description |
---|---|
ActiveContentChanged | Raised when ActiveContent changes. |
DocumentClosed | Raised after a document is closed. |
DocumentClosing | Raised when a document is about to be closed. |
LayoutChanged | Raised when Layout changes. See also OnLayoutChanged. |
LayoutChanging | Raised when Layout is about to be changed. |
Property | Description |
---|---|
AnchorableContextMenu | Gets/sets the context menu to display for anchorables. |
AnchorableHeaderTemplate | Gets/sets the DataTemplate to use for the headers of anchorables. |
AnchorableHeaderTemplateSelector | Gets/sets the selector to use when selecting the DataTemplate for the headers of anchorables. |
AnchorablePaneControlStyle | Gets/sets the Style to apply to LayoutAnchorablePaneControl. |
AnchorablePaneTemplate | Gets/sets the ControlTemplate used to render LayoutAnchorablePaneControl. |
AnchorablesSource | Gets/sets the source collection of LayoutAnchorable objects. |
AnchorableTitleTemplate | Gets/sets the DataTemplate to use for the title of an anchorable. |
AnchorableTitleTemplateSelector | Gets/sets the DataTemplateSelector to use when selecting a DataTemplate for the title of an anchorable. |
Property | Description |
---|---|
AnchorGroupTemplate | Gets/sets the ControlTemplate used to render the LayoutAnchorGroupControl. |
AnchorSideTemplate | Gets/sets the ControlTemplate used to render LayoutAnchorSideControl. |
AnchorTemplate | Gets/sets the ControlTemplate used to render LayoutAnchorControl. |
Property | Description |
---|---|
LeftSidePanel | Gets/sets the left side panel control. |
RightSidePanel | Gets/sets the right side panel control. |
TopSidePanel | Gets/sets the top side panel control. |
BottomSidePanel | Gets/sets the bottom side panel control. |
See also: DockingManagerDropTarget
Property | Description |
---|---|
DocumentContextMenu | Gets/sets the context menu to show for documents. |
DocumentHeaderTemplate | Gets/sets the DataTemplate to use for document headers. |
DocumentHeaderTemplateSelector | Gets/sets the DataTemplateSelector that can be used for selecting a DataTemplates for a document header. |
DocumentPaneControlStyle | Gets/sets the Style of LayoutDocumentPaneControl. |
DocumentPaneMenuItemHeaderTemplate | Gets/sets the DataTemplate to use when creating menu items in dropdowns on document panes. |
DocumentPaneMenuItemHeaderTemplateSelector | Gets/sets the DataTemplate selector to use for the menu items shown when the user selects the LayoutDocumentPaneControl's document switch context menu. |
DocumentPaneTemplate | Gets/sets the ControlTemplate that can be used to render the LayoutDocumentPaneControl. |
DocumentsSource | Gets/sets the source collection of LayoutDocument objects. |
DocumentTitleTemplate | Gets/sets the DataTemplate to use for displaying the title of a document. |
DocumentTitleTemplateSelector | Gets/sets the DataTemplateSelector to use for displaying the DataTemplate of a document's title. |
Property | Description |
---|---|
LayoutRoot Layout | Gets/sets the root of the layout tree. |
LayoutItemContainerStyle | Gets/sets the Style to apply to LayoutDocumentItem objects. |
LayoutItemContainerStyleSelector | Gets/sets the Style selector of LayoutDocumentItemStyle. |
LayoutItemTemplate | Gets/sets the template used to render anchorable and document content. |
LayoutItemTemplateSelector | Gets/sets the DataTemplateSelector to use for anchorable and document templates. |
LayoutRootPanel | Gets/sets the layout panel control which is attached to the Layout.Root property. |
LayoutUpdateStrategy | Gets/sets the strategy class to call when AvalonDock needs to position an anchorable inside an existing layout model. |
Property | Description |
---|---|
ActiveContent | Gets/sets the currently active content. |
AllowMixedOrientation | Gets/sets whether the docking manager should allow mixed orientation for document panes. |
AutoHideWindow | Gets the currently shown autohide window. |
AutoHideDelay | Gets/sets the wait time in milliseconds that is applicable when the is about to hide the autohide window back into its anchor representation into one of the side panels (top, bottom, left, or right). Recommended configuration value range should be between 0 and 1500 milliseconds. |
AutoWindowSizeWhenOpened | Gets/sets whether the floating window size of a LayoutFloatingWindowControl is auto sized when it is dragged out. |
FloatingWindows | Gets the floating windows. |
GridSplitterHeight | Gets/sets the height of grid splitters. |
GridSplitterWidth | Gets/sets the width of grid splitters. |
IconContentTemplate | Gets/sets the DataTemplate to use on the icon extracted from the layout model. |
IconContentTemplateSelector | Gets/sets the DataTemplate selector to use when selecting the DataTemplate for content icons. |
IsVirtualizingAnchorable | Gets/sets (a simple non-dependency property) to determine whether the LayoutAnchorablePaneControl is virtualizing its tabbed item child controls or not. |
IsVirtualizingDocument | Gets/sets (a simple non-dependency property) to determine whether the LayoutDocumentPaneControl is virtualizing its tabbed item child controls or not. |
ShowSystemMenu | Gets/sets whether floating windows should show the system menu when a custom context menu is not defined. |
Theme | Gets/sets the theme to use for AvalonDock controls. |
Property | Description |
---|---|
LayoutPanelControl LayoutRootPanel | Gets/sets the layout panel control which is attached to the Layout.Root property. |
LayoutAnchorSideControl LeftSidePanel
|
Gets/sets the left side panel control. |
LayoutAnchorSideControl RightSidePanel
|
Gets/sets the right side panel control. |
LayoutAnchorSideControl TopSidePanel
|
Gets/sets the top side panel control. |
LayoutAnchorSideControl BottomSidePanel
|
Gets/sets the bottom side panel control. |
LayoutAutoHideWindowControl AutoHideWindow
|
Gets the currently shown autohide window. |
The above properties implement the controls that are part of the root of the Visual Tree.
The LayoutRoot Layout
implements the root of the Layout Tree which implements the layout models for the root of the visual tree.
-
LayoutItem GetLayoutItemFromModel( LayoutContent content )
- Returns the LayoutItem wrapper for the content passed in LayoutContent as argument.
- Overridden. Is invoked whenever application code or internal processes call ApplyTemplate, setting up AutoHideWindow.
-
LayoutFloatingWindowControl CreateFloatingWindow( LayoutContent contentModel, bool isContentImmutable )
- Creates a Floating Window based on the received content model. Is invoked when a LayoutFloatingWindowControl is required for display of a (layout is (re-)loaded from storage or user drags a LayoutAnchorable or LayoutDocument):
- Returns:
-
UIElement CreateUIElementForModel( ILayoutElement model )
- This method is invoked to create the actual visible UI element from a given layout model. It is invoked when:
- New UI items are created and layed out or
- Layout is deserialized, and the previous UI items are restored to the screen (using the model whos information was serialized to XML).
Executes when the user starts to drag a Document or LayoutAnchorable by dragging its title.
internal void StartDraggingFloatingWindowForContent( LayoutContent contentModel, bool startDrag = true )
Called by:
Document
-
Controls.LayoutDocumentTabItem
- protected override void OnMouseMove(System.Windows.Input.MouseEventArgs e)
- private void StartDraggingFloatingWindowForContent()
- protected override void OnMouseMove(System.Windows.Input.MouseEventArgs e)
-
Controls.DocumentPaneTabPanel
-
Commented out in line 108
- protected override void OnMouseLeave( System.Windows.Input.MouseEventArgs e )
-
Commented out in line 108
Anchorable
-
Controls.AnchorablePaneTitle
- protected override void OnMouseLeave( System.Windows.Input.MouseEventArgs e )
-
Controls.AnchorablePaneTabPanel
- protected override void OnMouseLeave( System.Windows.Input.MouseEventArgs e)
-
Layout.LayoutContent
- public void Float()
- LayoutContent is the base class of the LayoutAnchorable and LayoutDocument classes.
- public void Float()
Executes when the user starts to drag a LayoutAnchorable by dragging its pane. The pane is not the same as the title since a layoutanchorable can have a horizontal bar on top (the pane) and a TabItem (Title) at the bottom, and both elements are dragable.
internal void StartDraggingFloatingWindowForPane( LayoutAnchorablePane paneModel )
Called by:
- Controls.AnchorablePaneTitle
- protected override void OnMouseLeave( System.Windows.Input.MouseEventArgs e )
- WinForms Demo Client
- WPF VS 2013 Demo Client
- WPF MVVM TestApp
- TestApp
- Upgrading to V4.0 or later
- Localization
- Layout Model Control Graph
- AnchorablePaneDropTarget
- AnchorablePaneTabPanel
- ContextMenuEx
- DocumentPaneDropTarget
- DocumentPaneTabPanel
- DockingManager
- DockingManagerDropTarget
- DragService
- DropDownButton
- DropDownControlArea
- DropTarget<T>
- LayoutAnchorableControl
- LayoutAnchorableFloatingWindowControl
- LayoutAnchorControl
- LayoutAnchorGroupControl
- LayoutAnchorablePaneControl
- LayoutAnchorablePaneGroupControl
- LayoutAnchorableTabItem
- LayoutAutoHideWindowControl
- AnchorablePaneTitle
- LayoutAnchorSideControl
- LayoutDocumentControl
- LayoutDocumentFloatingWindowControl
- LayoutDocumentPaneControl
- LayoutDocumentPaneGroupControl
- LayoutDocumentTabItem
- LayoutFloatingWindowControl
- LayoutGridControl<T>
- LayoutGridResizerControl
- LayoutItem
- LayoutAnchorableItem
- LayoutDocumentItem
- LayoutPanelControl
- MenuItemEx
- NavigatorWindow
- OverlayWindow
- TabControlEx
- LayoutAnchorable
- LayoutAnchorableFloatingWindow
- LayoutAnchorGroup
- LayoutAnchorablePane
- LayoutAnchorablePaneGroup
- LayoutAnchorSide
- LayoutContent
- LayoutDocument
- LayoutDocumentFloatingWindow
- LayoutDocumentPane
- LayoutDocumentPaneGroup
- LayoutElement
- LayoutFloatingWindow
- LayoutGroup
- LayoutGroupBase
- LayoutPanel
- LayoutPositionableGroup
- LayoutRoot
- IDropTarget
- ILayoutAnchorablePane
- ILayoutContainer
- ILayoutControl
- ILayoutContentSelector
- ILayoutDocumentPane
- ILayoutElement
- ILayoutElementForFloatingWindow
- ILayoutElementWithVisibility
- ILayoutGroup
- ILayoutPane
- ILayoutPanelElement
- ILayoutPaneSerializable
- ILayoutPositionableElement
- ILayoutPositionableElementWithActualSize
- ILayoutPreviousContainer
- ILayoutOrientableGroup
- ILayoutRoot
- IOverlayWindow
- IOverlayWindowArea
- IOverlayWindowDropTarget
- IOverlayWindowHost
- DropTarget
- ILayoutItem (Interface Design)
- LayoutElement
- LayoutGridControl
- LayoutItem (Class Design)
- TabContolEx (Class Design)
- Window