ClassComponentBehavior
Manages behavioral aspects of RadControl components including input handling, element selection, keyboard navigation, tooltips, and visual feedback mechanisms.
Definition
Namespace:Telerik.WinControls
Assembly:Telerik.WinControls.dll
Syntax:
public class ComponentBehavior : IDisposable
Inheritance: objectComponentBehavior
Derived Classes:
Implements:
Constructors
ComponentBehavior(IComponentTreeHandler)
Initializes a new instance of the ComponentBehavior class for the specified component tree handler.
Declaration
public ComponentBehavior(IComponentTreeHandler owner)
Parameters
owner
The IComponentTreeHandler that owns this behavior instance.
Remarks
The constructor establishes the relationship between the behavior manager and its owner component, enabling the behavior to manage input, focus, and visual state for the associated control and its element tree.
Fields
Properties
AllowShowFocusCues
Indicates focus cues display, when available, based on the corresponding control type and the current UI state.
Declaration
public virtual bool AllowShowFocusCues { get; set; }
Property Value
BitmapRepository
Declaration
public FillRepository BitmapRepository { get; }
Property Value
CommandBindings
Declaration
[TypeConverter(typeof(ExpandableObjectConverter))]
public InputBindingsCollection CommandBindings { get; }
Property Value
DefaultShowItemToolTips
Declaration
protected virtual bool DefaultShowItemToolTips { get; }
Property Value
EnableKeyMap
Gets or sets whether Key Map (Office 2007 like accelerator keys map) is used for this specific control. Currently this option is implemented for the RadRibbonBar control only.
Declaration
[Browsable(true)]
public bool EnableKeyMap { get; set; }
Property Value
FocusedElement
Gets or sets the currently focused RadElement within the component tree.
Declaration
[Browsable(false)]
public RadElement FocusedElement { get; set; }
Property Value
The RadElement that currently has input focus, or null if no element is focused.
Remarks
Setting this property to a specific element will give focus to that element and remove focus
from any previously focused element. Setting it to null will remove focus from the
currently focused element. This property coordinates with the focus management system to
ensure proper focus state handling throughout the element tree.
IsParentFormActive
Gets whether this instance of RadControl is on a active form
MouseOver
Determines whether the mouse over the owning IComponentTreeHandler instance.
Owner
Declaration
protected IComponentTreeHandler Owner { get; }
Property Value
OwnerControl
Declaration
[Browsable(false)]
protected Control OwnerControl { get; }
Property Value
SelectedElement
Gets the current selected element (hovered by the mouse).
Declaration
[Browsable(false)]
public RadElement SelectedElement { get; }
Property Value
ShowItemToolTips
Gets or sets a value indicating whether ToolTips are shown for the RadItem objects contained in the RadControl.
ShowScreenTipsBellowControl
Gets or sets value indicating whether the control should show all screen tips under the control client rectangle, as required for the RibbonBar control, for example
Declaration
public bool ShowScreenTipsBellowControl { get; set; }
Property Value
ToolTip
Gets the ToolTip instance used to display element tooltips within the component.
Declaration
public ToolTip ToolTip { get; }
Property Value
A ToolTip instance that handles tooltip display for elements within the component tree. The property creates a RadToolTip instance on first access if one doesn't already exist.
Remarks
The tooltip is lazily created when first accessed. If the component has a valid element tree with a root element, a RadToolTip is created with that root element as context. Otherwise, a default RadToolTip instance is created.
This tooltip is used throughout the component to display contextual help text for elements that have their ToolTipText property set.
ToolTipOffsetX
Gets or sets the value of how much the tooltip will be moved on the X coordinate
ToolTipOffsetY
Gets or sets the value of how much the tooltip will be moved on the Y coordinate
Methods
Dispose()
Releases all resources used by the ComponentBehavior instance.
Declaration
public void Dispose()
Implements
Remarks
This method cleans up managed resources including element references, keyboard mappings, tooltips, screen tip presenters, and shortcut collections. It follows the standard .NET disposal pattern and suppresses finalization.
Dispose(bool)
Declaration
protected virtual void Dispose(bool disposing)
Parameters
disposing
DisposeAdornerLayer()
Declaration
protected virtual void DisposeAdornerLayer()
DisposeKeyTips()
Clears all resources reserved for the KeyTips functionality
Declaration
protected virtual void DisposeKeyTips()
GetActivatedItem(RadElement, char)
Declaration
protected RadItem GetActivatedItem(RadElement element, char charCode)
Parameters
element
charCode
Returns
HideScreenTip()
Declaration
public void HideScreenTip()
InitializeAdornerLayer()
Declaration
protected virtual void InitializeAdornerLayer()
InitializeKeyMap()
Declaration
protected virtual void InitializeKeyMap()
IsFocusWithin(RadElement)
Checks is a given element or any of its descendants contain the focus.
Declaration
public bool IsFocusWithin(RadElement element)
Parameters
element
The element.
Returns
[true] if the element or any of its children contain focus, [false] otherwise.
OnEnableKeyTipsChanged()
Declaration
protected virtual void OnEnableKeyTipsChanged()
OnGotFocus(EventArgs)
Handles the event that occurs when the control receives focus, restoring focus to the last focused element.
Declaration
public virtual bool OnGotFocus(EventArgs e)
Parameters
e
An EventArgs that contains the event data.
Returns
true if the event is handled; otherwise, false.
Remarks
This method is called when the owner control gains focus. It attempts to restore focus to the element that was previously focused before the control lost focus, maintaining focus continuity for improved user experience.
If a last focused element exists and is not disposed, it becomes the current focused element and receives input focus. The last focused element reference is then cleared.
OnLostFocus(EventArgs)
Handles the event that occurs when the control loses focus, preserving the focus state for later restoration.
Declaration
public virtual bool OnLostFocus(EventArgs e)
Parameters
e
An EventArgs that contains the event data.
Returns
true if the event is handled; otherwise, false.
Remarks
This method is called when the owner control loses focus. It removes focus from the currently focused element and stores a reference to it for later restoration when the control regains focus.
Additionally, if keyboard mapping (key tips) is active, this method resets the key map state to ensure proper cleanup when focus is lost.
ResetKeyMap()
Declaration
protected virtual void ResetKeyMap()
ResetKeyMapInternal()
Declaration
protected virtual void ResetKeyMapInternal()
SetElementValue(RadElement, RadProperty, object)
Declaration
public void SetElementValue(RadElement element, RadProperty dependencyProperty, object value)
Parameters
element
dependencyProperty
value