Introduction
A PlaceHolderManager represents a partitioned container in a WebForm which supports docking capabilities for IBar implemented controls. In this release, PlaceHolderManager can be used with following components:
- WebMenuBar
- WebToolBar
The main objective of the PlaceHolderManager is to enable a certain zone in the WebForm to be marked as "dockable boundaries". This is also called PlaceHolderManager's Container. The container can be one of the following type:
- Html Server Control DIV
- Html Server Control TABLE
At component design, the PlaceHolderManager is a non-visual server side control which can be instantiated by dropping it from ToolBox. The PlaceHolderManager
is also accompanied with a new innovative PlaceHolder Designer to let developers work easily with
the PlaceHolderManager and the contained Bars.
The following illustration shows the PlaceHolderManager Concept in overall.

![]() |
With the modular design of the PlaceHolderContainer, you can attach the container at any level in your WebForm instead the main view of the Form. For instance, you might have an existing Layout of "Header, Side and Footer". You can put the container inside the "Side" content and the docking zone will only be applicable to the specified Side zone. |
Features
PlaceHolderManager offers several advanced features such as provided in the following:
- Automatic Resizing
- MaxDockingRows
- FillDockingRow
- DockingArea
- DockingOffset
- Individual AllowDocking container for default properties and styles, automatic resizing, maxdockingrows, filldockingrow, samerowdocking
Integration
One of the key benefit of PlaceHolderManager is its tight integration with IBar implemented controls. The PlaceHolderManager acts as the manager for all bars that it owned. PlaceHolderManager contains all master configurations such as styles and behaviors of the ToolBar and MenuBar.
The tight integration feature significantly improves developer's productivity with the global configurations managed by the PlaceHolderManager, since you do not have to configure the style or behavior of all Bars individually (especially when there are large number of Bars in the WebForm).
![]() |
The other popular benefit of the integration is the clean tags and reduced HTML output for the Bars server control definition. Each Bar typically would only need to have the Collection definition since other behaviors and the styles are inherited automatically from its PlaceHolderManager. |
To integrate a Bar into specific PlaceHolderManager, you can simply set the PlaceHolder property. By default, when you drop a new Bar from ToolBox to the designer surface, the Bar will automatically looking for the default PlaceHolderManager instance, set its PlaceHolder property to the PlaceHolderManager's ID and finally set its IntegratedTo property to PlaceHolderManager. For more information on how the PlaceHolderManager works in design time, see Interactive PlaceHolderManager Designer.
The following illustration shows a snapshot of PlaceHolderManager properties and ToolBar properties. You can notice that most of ToolBar's properties are set to Default, which means the value will be obtained from its PlaceHolderManager.

![]() |
As seen in above illustration, when a Bar is integrated into PlaceHolderManager, you can not customize the individual styles of the ToolBar. Notice that the BodyStyle, HandleStyle, and the rest styles can no longer be expanded (no + sign). However, the behaviors can still be customized at individual level, that is by changing the property's value from Default to other available value. |
When to use PlaceHolderManager
In this section, provided are some recommendations on best practices for using PlaceHolderManager.
Use PlaceHolderManager when:
- The page requires docking functionalities.
- The page contains more than one bar instance.
- The page requires bars which is customizable (through AllowCustomize).
- The page contains multiple type of Bars. For instance, MenuBar and ToolBar.
- The page requires visual styles consistency of all Bars, and style inherittance from DesktopManager.
Do not use PlaceHolderManager when:
- The page contains only one instance of Bar and there are no intentions to add more Bars in the future.
- The page contains bars which doesn't require docking functionalities.
![]() |
When a Bar is working in standalone mode, the drag and drop functionality (AllowMove) of the Bar will be disabled at runtime, as well as other manager-dependent features such as AllowCustomize, Merging etc. |

