[Expand]General Information
[Expand]WinForms Controls
[Collapse]ASP.NET Controls and MVC Extensions
 [Expand]What's Installed
 [Expand]Common Concepts
 [Expand]ASP.NET WebForms Controls
 [Collapse]ASP.NET MVC Extensions
  [Expand]Product Information
  [Expand]Getting Started
  [Expand]Common Concepts
  [Expand]Grid View
  [Expand]Tree List
  [Expand]Card View
  [Expand]Pivot Grid
  [Expand]Rich Text Editor
  [Expand]Site Navigation and Layout
  [Expand]HTML Editor
  [Expand]Vertical Grid
  [Expand]Data Editors Extensions
  [Collapse]Docking and Popups
     Overview - Docking
      Panel Overview
      Forbidden Zones
      Common Docking Events
      Layout Management
    [Expand]Visual Elements
   [Expand]Loading Panel
  [Expand]File Management
  [Expand]Data and Image Navigation
  [Expand]Multi-Use Site Extensions
  [Expand]Query Builder
 [Expand]Redistribution and Deployment
  Get More Help
 [Expand]API Reference
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Report and Dashboard Server
[Expand]eXpressApp Framework
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)

Panel Overview

The dock panel is a content placeholder, which can be moved by end-users between particular dock zones within a web page.

To specify which part of a panel can be dragged to move a panel, use the PopupControlSettingsBase.DragElement property. You can prohibit end-users from dragging a panel by setting the PopupControlSettingsBase.AllowDragging property to false.

A DockPanel can be resized by end-users if the PopupControlSettingsBase.AllowResize property is set to true. You can specify the size constraints for a panel using the PopupControlSettingsBase.MinHeight, PopupControlSettingsBase.MaxHeight, PopupControlSettingsBase.MinWidth, and PopupControlSettingsBase.MaxWidth properties. If the panel content does not fit the panel size, you can enable scroll bars via the PopupControlSettingsBase.ScrollBars property.

To recognize panels, the DockPanelSettings.PanelUID property can be used. You can obtain a panel on the server (MVCxDockManager.FindPanelByUID) or client (ASPxClientDockManager.GetPanelByUID and ASPxClientDockZone.GetPanelByUID) side using the panel unique identifier.

A DockPanel has the capability to load panel content on demand via callbacks. Several content loading modes are available via the DockPanelSettings.LoadContentViaCallback property.

A dock panel can either be docked to a dock zone or made to float. End-users can dock/undock panels by dragging them. To change the panel dock state programmatically, use the DockPanelSettings.OwnerZoneUID property on the server side, or the ASPxClientDockPanel.Dock and ASPxClientDockPanel.MakeFloat methods on the client side. To get the panel dock state on the client side, use the ASPxClientDockPanel.IsDocked method. You can specify dock states allowed for a panel (dock only, float only or both) via the DockPanelSettings.AllowedDockState property.

You can obtain a zone that owns the panel by its unique identifier (UID) using the DockPanelSettings.OwnerZoneUID property. To get the owner zone on the client side, use the ASPxClientDockPanel.GetOwnerZone method. To control where the panel is displayed amongst other panels within the zone, use the DockPanelSettings.VisibleIndex property. To manage a panel's visible index on the client side, use the ASPxClientDockPanel.GetVisibleIndex and ASPxClientDockPanel.SetVisibleIndex methods.

Using a dock panel's DockPanelSettings.ForbiddenZones property, you can specify disallowed zones for the panel - the zones to which the panel cannot be docked. To learn more about forbidden zones, follow the Forbidden Zones topic.

You can respond to panel dragging and docking using the corresponding panel events. Additionally you can respond to closing, showing and resizing of a panel using dock manager events. To learn more, see the Common Docking Events topic.

Expanded Reasons for a panel not docking

In the following cases, a panel does not dock to a zone. You can set the panel's owner zone programmatically, but it actually stays in a floating state:

Expanded See Also

Is this topic helpful?​​​​​​​