ClassRadSplitContainer
Represents a container control that provides a resizable split interface with multiple panels. The control supports both horizontal and vertical orientations and allows dynamic resizing of contained panels.
Definition
Namespace:Telerik.WinControls.UI
Assembly:Telerik.WinControls.UI.dll
Syntax:
[TelerikToolboxCategory("Containers")]
[Docking(DockingBehavior.Ask)]
[RadToolboxItem(false)]
public class RadSplitContainer : SplitPanel, IDropTarget, ISynchronizeInvoke, IWin32Window, IBindableComponent, IComponent, IDisposable, INotifyPropertyChanged, ISupportInitializeNotification, ISupportInitialize, IComponentTreeHandler, ILayoutHandler, IAnalyticsProvider
Inheritance: objectMarshalByRefObjectComponentControlScrollableControlRadControlSplitPanelRadSplitContainer
Derived Classes:
Implements:
Inherited Members
Constructors
RadSplitContainer()
Initializes a new instance of the RadSplitContainer class.
Declaration
public RadSplitContainer()
RadSplitContainer(Orientation)
Initializes a new instance of the RadSplitContainer class with the specified orientation.
Declaration
public RadSplitContainer(Orientation orientation)
Parameters
orientation
The orientation of the split container.
Properties
ContentRectangle
Declaration
[Browsable(false)]
public virtual Rectangle ContentRectangle { get; }
Property Value
Cursor
Gets or sets the cursor that is displayed when the mouse pointer is over the control.
Declaration
[Browsable(false)]
public override Cursor Cursor { get; set; }
Property Value
Overrides
EnableCollapsing
Determines whether the panels can be collapsed when clicking twice on splitter or click once on navigation button. If you disable collapsing, UseSplitterButtons will also be disabled.
EnableImmediateResize
Gets a value indicating whether the bounds of the split panels should be updated immediately on drag.
Declaration
[Browsable(true)]
public bool EnableImmediateResize { get; set; }
Property Value
HasNonCollapsedChild
Declaration
[Browsable(false)]
public bool HasNonCollapsedChild { get; }
Property Value
HasVisibleSplitPanels
Declaration
[Browsable(false)]
public bool HasVisibleSplitPanels { get; }
Property Value
HorizontalResizeCursor
Gets or sets the cursor which is used while resizing a panel and the control`s orientation is horizontal.
Declaration
[Browsable(true)]
public virtual Cursor HorizontalResizeCursor { get; set; }
Property Value
LayoutStrategy
Gets or sets the layout strategy that arranges all the visible SplitPanel children.
Declaration
[Browsable(false)]
public SplitContainerLayoutStrategy LayoutStrategy { get; set; }
Property Value
NavigationButtonCursor
Gets or sets the cursor which is used while the mouse is over the navigation buttons.
Declaration
[Browsable(true)]
public virtual Cursor NavigationButtonCursor { get; set; }
Property Value
Orientation
Gets or sets a value indicating the horizontal or vertical orientation of the Telerik.WinControls.UI.RadSplitContainer panels.
Declaration
public Orientation Orientation { get; set; }
Property Value
RootContainer
Declaration
[Browsable(false)]
public RadSplitContainer RootContainer { get; }
Property Value
SplitContainerElement
Gets the split container element.
Declaration
[Browsable(false)]
public SplitContainerElement SplitContainerElement { get; }
Property Value
SplitPanels
Declaration
[Browsable(false)]
public SplitPanelCollection SplitPanels { get; }
Property Value
SplitterWidth
Gets or sets the width of a single splitter on the container. Specify zero to prevent displaying any splitters at all.
Splitters
Declaration
[Browsable(false)]
public SplitterCollection Splitters { get; }
Property Value
ThemeClassName
Gets or sets the class name string that ThemeResolutionService will use to find the themes registered for the control.
Declaration
[Browsable(false)]
public override string ThemeClassName { get; set; }
Property Value
Overrides
Remarks
By default the return value is RadControl's type FullName; Some controls like drop down menu has different ThemeClassName depending on the runtime usage of the control.
UseSplitterButtons
Enable and Disable navigation buttons. If you enable the buttons EnableCollapsing will also be enabled.
VerticalResizeCursor
Gets or sets the cursor which is used while resizing a panel and the control`s orientation is vertical.
Declaration
[Browsable(true)]
public virtual Cursor VerticalResizeCursor { get; set; }
Property Value
Methods
ApplyThemeToSplitterElements()
Applies theme to all SplitterElements.
Declaration
protected virtual void ApplyThemeToSplitterElements()
CalculateSplitterDistance(RadDirection, int, int, int, int)
Calculates the splitter distance based on the specified direction and bounds.
Declaration
protected virtual void CalculateSplitterDistance(RadDirection direction, int initialSplitterDistance, int lastSplitterPosition, int boundsMinimum, int boundsMaximum)
Parameters
direction
The direction to move the splitter.
initialSplitterDistance
The initial splitter distance.
lastSplitterPosition
The last splitter position.
boundsMinimum
The minimum bounds value.
boundsMaximum
The maximum bounds value.
Construct()
Declaration
protected override void Construct()
Overrides
CreateChildItems(RadElement)
Creates the main panel element and adds it in the root element.
Declaration
protected override void CreateChildItems(RadElement parent)
Parameters
parent
Overrides
CreateControlsInstance()
Declaration
protected override Control.ControlCollection CreateControlsInstance()
Returns
Overrides
GetSplitterElementAndButtonElementAtPoint(Point, out SplitterElement, out RadButtonElement)
Gets the SplitterElement and RadButtonElement whose rectangles contain the specified point.
Declaration
public virtual void GetSplitterElementAndButtonElementAtPoint(Point clientPoint, out SplitterElement splitter, out RadButtonElement button)
Parameters
clientPoint
The point to test, in SplitContainer client coordinates.
splitter
When this method returns, contains the SplitterElement at the specified point, or null if no splitter is found.
button
When this method returns, contains the RadButtonElement at the specified point, or null if no button is found.
GetSplitterElementAtPoint(Point)
Gets the SplitterElement which rectangle contains the specified point.
Declaration
public virtual SplitterElement GetSplitterElementAtPoint(Point clientPoint)
Parameters
clientPoint
Point to test, in SplitContainer client coordinates.
Returns
SplitterElement if found, null otherwise.
LayoutInternal()
Performs the internal layout logic for the split container.
Declaration
protected void LayoutInternal()
MoveSplitter(SplitterElement, RadDirection)
Moves the specified splitter in the given direction.
Declaration
public void MoveSplitter(SplitterElement splitter, RadDirection direction)
Parameters
splitter
The splitter element to move.
direction
The direction to move the splitter.
OnChildPanelCollapsedChanged(SplitPanel)
Called when a child panel's collapsed state changes.
Declaration
protected virtual void OnChildPanelCollapsedChanged(SplitPanel child)
Parameters
child
The child panel whose collapsed state changed.
OnControlRemoved(ControlEventArgs)
Called when a control is removed from the split container.
Declaration
protected override void OnControlRemoved(ControlEventArgs e)
Parameters
e
The event arguments containing information about the removed control.
Overrides
OnLayout(LayoutEventArgs)
Called when the layout needs to be performed.
Declaration
protected override void OnLayout(LayoutEventArgs e)
Parameters
e
The layout event arguments.
Overrides
OnLoad(Size)
Called when the control is loaded with the specified desired size.
Declaration
protected override void OnLoad(Size desiredSize)
Parameters
desiredSize
The desired size of the control.
Overrides
OnMouseDoubleClick(MouseEventArgs)
Called when the control is double-clicked.
Declaration
protected override void OnMouseDoubleClick(MouseEventArgs e)
Parameters
e
The mouse event arguments.
Overrides
OnMouseDown(MouseEventArgs)
Called when a mouse button is pressed over the control.
Declaration
protected override void OnMouseDown(MouseEventArgs e)
Parameters
e
The mouse event arguments.
Overrides
OnMouseLeave(EventArgs)
Called when the mouse pointer leaves the control.
Declaration
protected override void OnMouseLeave(EventArgs e)
Parameters
e
The event arguments.
Overrides
OnMouseMove(MouseEventArgs)
Called when the mouse pointer moves over the control.
Declaration
protected override void OnMouseMove(MouseEventArgs e)
Parameters
e
The mouse event arguments.
Overrides
OnMouseUp(MouseEventArgs)
Called when a mouse button is released over the control.
Declaration
protected override void OnMouseUp(MouseEventArgs e)
Parameters
e
The mouse event arguments.
Overrides
OnNavigationButtonClick(object, EventArgs)
Called when a navigation button is clicked.
OnOrientationChanged(EventArgs)
Called when the orientation of the split container changes.
Declaration
protected virtual void OnOrientationChanged(EventArgs e)
Parameters
e
The event arguments.
OnPanelCollapsed(SplitterElement, EventArgs)
Raises the PanelCollapsed event.
Declaration
public virtual void OnPanelCollapsed(SplitterElement splitter, EventArgs e)
Parameters
splitter
The splitter element involved in the operation.
e
The event arguments.
OnPanelCollapsing(SplitterElement, PanelCollapsingEventArgs)
Raises the PanelCollapsing event.
Declaration
public virtual void OnPanelCollapsing(SplitterElement splitter, RadSplitContainer.PanelCollapsingEventArgs e)
Parameters
splitter
The splitter element involved in the operation.
e
RadSplitContainer.PanelCollapsingEventArgs
The event arguments containing panel collapsing information.
OnParentChanged(EventArgs)
Called when the parent of the control changes.
Declaration
protected override void OnParentChanged(EventArgs e)
Parameters
e
The event arguments.
Overrides
OnSplitterMoved(SplitterEventArgs)
Raises the SplitterMoved event.
Declaration
protected virtual void OnSplitterMoved(SplitterEventArgs e)
Parameters
e
The event arguments containing splitter movement information.
OnSplitterMoving(SplitterCancelEventArgs)
Raises the SplitterMoving event.
Declaration
protected virtual void OnSplitterMoving(SplitterCancelEventArgs e)
Parameters
e
The event arguments containing splitter movement information.
OnThemeChanged()
Called when the theme of the control changes.
Declaration
protected override void OnThemeChanged()
Overrides
ResetBackColorThemeOverrides()
Resets theme overrides for the background color property.
Declaration
protected override void ResetBackColorThemeOverrides()
Overrides
RestoreSplitterPosition(SplitterElement)
Restores the splitter to its last known position.
Declaration
public void RestoreSplitterPosition(SplitterElement splitter)
Parameters
splitter
The splitter element to restore.
SetBackColorThemeOverrides()
Sets theme overrides for the background color property.
Declaration
protected override void SetBackColorThemeOverrides()
Overrides
UpdateSplitter(SplitContainerLayoutInfo, int, Rectangle)
Updates the splitter, associated with the specified index of a child SplitPanel.
Declaration
protected virtual void UpdateSplitter(SplitContainerLayoutInfo info, int panelIndex, Rectangle bounds)
Parameters
info
The layout info, containing information about the operation.
panelIndex
The index of the panel for which the splitter should be updated.
bounds
The bounding rectangle of the splitter.
Events
PanelCollapsed
Occurs when a panel has collapsed.
Declaration
public event RadSplitContainer.PanelCollapsedEventHandler PanelCollapsed
Event Value
PanelCollapsedChanged
Occurs when the collapsed state of any panel changes.
Declaration
public event SplitPanelEventHandler PanelCollapsedChanged
Event Value
PanelCollapsing
Occurs when a panel is collapsing.
Declaration
public event RadSplitContainer.PanelCollapsingEventHandler PanelCollapsing
Event Value
SplitterMoved
Occurs when any of the splitters is moved.
Declaration
[Browsable(true)]
public event SplitterEventHandler SplitterMoved
Event Value
SplitterMoving
Occurs when any of the splitters is moving.
Declaration
[Browsable(true)]
public event SplitterCancelEventHandler SplitterMoving
Event Value