RadTabbedFormControl
Represents a tabbed form control that provides a collection of tabs painted in the non-client area with associated containers for hosting other controls. This control serves as the foundation for creating tabbed interfaces with integrated caption bars, system buttons, and draggable tab functionality.
Definition
Namespace:Telerik.WinControls.UI
Assembly:Telerik.WinControls.UI.dll
Syntax:
[TelerikToolboxCategory("Containers")]
public class RadTabbedFormControl : RadNCEnabledControl, IDropTarget, ISynchronizeInvoke, IWin32Window, IBindableComponent, IComponent, IDisposable, INotifyPropertyChanged, ISupportInitializeNotification, ISupportInitialize, IComponentTreeHandler, ILayoutHandler, IAnalyticsProvider
Inheritance: objectMarshalByRefObjectComponentControlScrollableControlRadControlRadNonClientUIControlRadNCEnabledControlRadTabbedFormControl...
Implements:
Inherited Members
Constructors
Initializes a new instance of the RadTabbedFormControl class with default settings for tabbed form functionality.
public RadTabbedFormControl()
Properties
Gets a value indicating whether event raising is currently enabled for this control, taking into account the suspend events counter.
protected override bool CanRaiseEvents { get; }
Overrides:
Gets or sets the height of the extended title bar area that contains the tabs and caption elements.
public virtual int CaptionHeight { get; set; }
Gets or sets a value indicating whether the control causes validation to be performed on any controls that require validation when it receives focus.
[Browsable(false)]
public bool CausesValidation { get; set; }
Gets or sets a value indicating whether the tabbed form displays a close button in its caption area.
public bool CloseButton { get; set; }
Gets the default size of the tabbed form control when no explicit size is specified.
protected override Size DefaultSize { get; }
Overrides:
Gets the help button element from the form's caption area, providing access to context-sensitive help functionality.
public override RadItem HelpButtonElement { get; }
Overrides:
Gets the icon caption element that represents the form's icon in the title bar area of the tabbed form control.
public override ImagePrimitive IconCaptionElement { get; }
Overrides:
Gets or sets the drag mode for tabs, determining when and how tab drag operations are initiated by the user.
public TabItemDragMode ItemDragMode { get; set; }
Gets the collection of items displayed on the left side of the tabbed form control's caption area, providing quick access functionality.
[Browsable(true)]
[RadEditItemsAction]
[RadNewItem("Type here", true, false)]
public virtual RadItemOwnerCollection LeftItems { get; }
Gets the left items container element that hosts quick access items on the left side of the tabbed form control's caption area.
[Browsable(true)]
public RadQuickAccessToolBar LeftItemsContainer { get; }
Gets or sets a value indicating whether the tabbed form displays a maximize button in its caption area.
public bool MaximizeButton { get; set; }
Gets the maximize button element from the form's caption area, providing access to the system maximize/restore functionality.
public override RadItem MaximizeButtonElement { get; }
Overrides:
Gets or sets a value indicating whether the tabbed form displays a minimize button in its caption area.
public bool MinimizeButton { get; set; }
Gets the minimize button element from the form's caption area, providing access to the system minimize functionality.
public override RadItem MinimizeButtonElement { get; }
Overrides:
Gets or sets the minimum width that tabs can be resized to, ensuring tabs remain readable and functional.
public virtual int MinimumTabWidth { get; set; }
Gets or sets the position where pinned tabs will be displayed relative to regular tabs in the title bar area.
public virtual PinnedItemsPosition PinnedItemsPosition { get; set; }
Gets the collection of items displayed on the right side of the tabbed form control's caption area, providing additional quick access functionality.
[Browsable(true)]
[RadEditItemsAction]
[RadNewItem("Type here", true, false)]
public virtual RadItemOwnerCollection RightItems { get; }
Gets the right items container element that hosts quick access items on the right side of the tabbed form control's caption area.
[Browsable(true)]
public RadQuickAccessToolBar RightItemsContainer { get; }
Gets or sets the RadTabbedFormControlTab instance that is currently selected and active in the tabbed form control.
[Browsable(false)]
public RadTabbedFormControlTab SelectedTab { get; set; }
Gets or sets a value indicating whether the form icon is displayed in the caption bar area of the tabbed form control.
public virtual bool ShowIcon { get; set; }
Gets or sets a value indicating whether the new tab button is visible, allowing users to create new tabs through the UI.
public virtual bool ShowNewTabButton { get; set; }
Gets or sets a value indicating whether close buttons are displayed on individual tabs, allowing users to close tabs directly.
public virtual bool ShowTabCloseButton { get; set; }
Gets or sets a value indicating whether pin buttons are displayed on individual tabs, allowing users to pin tabs for persistent visibility.
public virtual bool ShowTabPinButton { get; set; }
Gets or sets a value indicating whether the element holding the form title text is visible in the caption area.
public virtual bool ShowText { get; set; }
Gets or sets the collection of small images used throughout the tabbed form control for icons and visual elements.
[Browsable(true)]
public override ImageList SmallImageList { get; set; }
Overrides:
Gets the system buttons element container from the form's caption area, which houses the minimize, maximize, and close buttons.
public override RadItem SystemButtonsElement { get; }
Overrides:
Gets the instance of RadTabbedFormControlElement wrapped by this control. The RadTabbedFormControlElement is the main element in the hierarchy tree and encapsulates the actual functionality of the RadTabbedFormControl.
[Browsable(false)]
public RadTabbedFormControlElement TabbedFormControlElement { get; }
Gets the RadTabbedFormControlTabsElement element that manages the display and layout of tabs within the tabbed form control.
[Browsable(true)]
public RadTabbedFormControlTabsElement TabbedFormControlTabsElement { get; }
Gets or sets the default height for all tabs in the tabbed form control, affecting the overall appearance of the tab strip.
public virtual int TabHeight { get; set; }
Gets the collection of tabs managed by this tabbed form control, providing access to add, remove, and manipulate individual tabs.
public RadTabbedFormControlTabCollection Tabs { get; }
Gets or sets the spacing between individual tabs in the tab strip, controlling the visual separation between tabs.
public virtual int TabSpacing { get; set; }
Gets or sets the default width for all tabs in the tabbed form control, determining the initial size of new tabs.
public virtual int TabWidth { get; set; }
Gets or sets the text displayed in the caption area of the tabbed form control, typically representing the form title.
public override string Text { get; set; }
Overrides:
Gets the text caption element that displays the form's title text in the caption area of the tabbed form control.
public override RadElement TextCaptionElement { get; }
Overrides:
Gets the theme class name for the control, which is used by the theming system to apply appropriate visual styles.
public override string ThemeClassName { get; }
Overrides:
Methods
Constructs the control by initializing its default settings and creating the tabs collection that will hold all tabbed form control tabs.
protected override void Construct()
Overrides:
Creates a new accessibility object for the control to support screen readers and automation tools.
protected override AccessibleObject CreateAccessibilityInstance()
A new RadTabbedFormControlAccessibilityObject if accessibility objects are enabled; otherwise, the base accessibility object.
Overrides:
Creates the child elements of the control, including the main tabbed form control element that provides the core tabbed interface functionality.
protected override void CreateChildItems(RadElement parent)
The parent element to which child elements will be added in the element hierarchy.
Overrides:
Creates a new instance of the control collection specifically designed for this tabbed form control.
protected override Control.ControlCollection CreateControlsInstance()
A new RadTabbedFormControlCollection instance that manages child controls.
Overrides:
Creates the main tabbed form control element that provides the core functionality for tab management, caption handling, and user interaction.
protected virtual RadTabbedFormControlElement CreateTabbedFormControlElement()
A new instance of RadTabbedFormControlElement configured for this control.
Creates a new instance of the tabs collection that will manage all tabs within this tabbed form control.
protected virtual RadTabbedFormControlTabCollection CreateTabsInstance()
RadTabbedFormControlTabCollection
A new RadTabbedFormControlTabCollection instance configured for this control.
Releases the unmanaged resources used by the RadTabbedFormControl and optionally releases the managed resources, including cleanup of parent form event handlers.
protected override void Dispose(bool disposing)
true to release both managed and unmanaged resources; false to release only unmanaged resources.
Overrides:
Initializes the root element of the control and performs any additional setup required for the tabbed form control element hierarchy.
protected override void InitializeRootElement(RootRadElement rootElement)
The root element to initialize with tabbed form specific configuration.
Overrides:
Raises the KeyDown event and processes keyboard shortcuts and navigation for the tabbed form control.
protected override void OnKeyDown(KeyEventArgs e)
A KeyEventArgs that contains the event data.
Overrides:
Raises the NewTabRequested event when the user requests a new tab through the user interface.
protected virtual void OnNewTabRequested(RadTabbedFormControlNewTabRequestedEventArgs e)
A RadTabbedFormControlNewTabRequestedEventArgs that contains the event data.
Raises the ParentChanged event and handles parent form text synchronization setup.
Raises the RightToLeftChanged event and updates the layout to reflect right-to-left reading order changes.
Raises the SelectedTabChanged event and performs analytics tracking for the tab selection change.
Raises the SelectedTabChanging event, allowing subscribers to validate or cancel the tab selection change.
protected virtual void OnSelectedTabChanging(RadTabbedFormControlCancelEventArgs e)
A RadTabbedFormControlCancelEventArgs that contains the event data and allows cancellation.
Raises the TabAdded event after a tab has been successfully added to the control.
protected virtual void OnTabAdded(RadTabbedFormControlEventArgs e)
A RadTabbedFormControlEventArgs that contains the event data for the added tab.
Raises the TabAdding event before a tab is added to the control, allowing validation and cancellation.
protected virtual void OnTabAdding(RadTabbedFormControlCancelEventArgs e)
A RadTabbedFormControlCancelEventArgs that contains the event data and allows cancellation.
Raises the TabItemIndexChanged event after a tab's index position has been successfully changed.
protected virtual void OnTabIndexChanged(RadTabbedFormControlIndexChangedEventArgs e)
A RadTabbedFormControlIndexChangedEventArgs that contains the event data for the index change.
Raises the TabItemIndexChanging event before a tab's index position changes, allowing validation and cancellation.
protected virtual void OnTabIndexChanging(RadTabbedFormControlIndexChangingEventArgs e)
A RadTabbedFormControlIndexChangingEventArgs that contains the event data and allows cancellation.
Raises the TabRemoved event after a tab has been successfully removed from the control, and handles automatic form closure when no tabs remain.
protected virtual void OnTabRemoved(RadTabbedFormControlEventArgs e)
A RadTabbedFormControlEventArgs that contains the event data for the removed tab.
Raises the TabRemoving event before a tab is removed from the control, allowing validation and cancellation.
protected virtual void OnTabRemoving(RadTabbedFormControlCancelEventArgs e)
A RadTabbedFormControlCancelEventArgs that contains the event data and allows cancellation.
Raises the TabsCleared event after all tabs have been successfully removed from the control.
Raises the TabsClearing event before all tabs are removed from the control, allowing validation and cancellation.
protected virtual void OnTabsClearing(CancelEventArgs e)
A CancelEventArgs that allows cancellation of the clear operation.
Processes CodedUI messages for automation and testing purposes, handling tab selection, property retrieval, and other automation commands.
protected override void ProcessCodedUIMessage(ref IPCMessage request)
The CodedUI message to process, containing the automation command and parameters.
Overrides:
Resumes event raising for tab-related events, previously suspended by a SuspendEvents() call. Events will be raised normally after this call.
public void ResumeEvents()
Sets the selected tab and performs the necessary layout operations to reflect the change in the user interface.
protected virtual void SetSelectedTab(RadTabbedFormControlEventArgs e)
A RadTabbedFormControlEventArgs that contains the event data for the tab selection.
Temporarily suspends event raising for all tab-related events to improve performance during bulk operations.
public void SuspendEvents()
Processes Windows messages for hit testing in the non-client area, handling special cases for tabbed form behavior and composition.
Events
Occurs when the context menu is about to be opened for a tab item, providing an opportunity to customize the context menu contents or cancel the operation.
public event EventHandler<RadTabbedFormControlItemConextMenuOpeningEventArgs> ContextMenuOpening
Occurs when a new tab item is about to be created, allowing customization of the tab creation process and initial properties.
public event EventHandler<RadTabbedFormControlItemCreatingEventArgs> ItemCreating
Occurs when a tab item has been successfully dropped over another item, completing the drag and drop operation. This event provides notification of the completed drop action.
public event EventHandler<RadTabbedFormControlItemDroppedEventArgs> ItemDropped
Occurs when a tab item is about to be dropped over another item during a drag and drop operation. This event allows customization of the drop behavior.
public event EventHandler<RadTabbedFormControlItemDroppingEventArgs> ItemDropping
Occurs when a new tab is requested by the user, typically through clicking a new tab button or similar UI element.
public event EventHandler<RadTabbedFormControlNewTabRequestedEventArgs> NewTabRequested
Occurs when the currently selected tab has changed, providing notification that a new tab is now active and selected.
public event EventHandler SelectedTabChanged
Occurs when the currently selected tab is about to change. This event is cancelable and allows validation or cleanup before the selection changes.
public event EventHandler<RadTabbedFormControlCancelEventArgs> SelectedTabChanging
Occurs when a new tab has been successfully added to the control, providing notification that the addition operation completed successfully.
public event EventHandler<RadTabbedFormControlEventArgs> TabAdded
Occurs when a new tab is about to be added to the control. This event is cancelable and allows validation or modification before the tab is added.
public event EventHandler<RadTabbedFormControlCancelEventArgs> TabAdding
Occurs when a tab's index position has been successfully changed within the tab collection, providing notification of the completed index change operation.
public event EventHandler<RadTabbedFormControlIndexChangedEventArgs> TabItemIndexChanged
Occurs when a tab is about to change its index position within the tab collection. This event is cancelable and allows validation of the index change.
public event EventHandler<RadTabbedFormControlIndexChangingEventArgs> TabItemIndexChanging
Occurs when a tab has been successfully removed from the control, providing notification that the removal operation completed successfully.
public event EventHandler<RadTabbedFormControlEventArgs> TabRemoved
Occurs when a tab is about to be removed from the control. This event is cancelable and allows validation or cleanup operations before removal.
public event EventHandler<RadTabbedFormControlCancelEventArgs> TabRemoving
Occurs when all tabs have been successfully removed from the control, providing notification that the clear operation completed successfully.
public event EventHandler TabsCleared
Occurs when all tabs are about to be removed from the control. This event is cancelable and allows validation or bulk cleanup operations before clearing.
public event CancelEventHandler TabsClearing