skip navigation
  • Product Bundles

    DevCraft

    All Telerik .NET tools and Kendo UI JavaScript components in one package. Now enhanced with:

    • AI Coding Assistants
    • Embedded Reporting
    • Document Processing Libraries
    • SSO Account Sign-in

    Web

    Kendo UI UI for Angular UI for Vue UI for jQuery KendoReact UI for Blazor UI for ASP.NET Core UI for ASP.NET MVC UI for ASP.NET AJAX

    Mobile

    UI for .NET MAUI

    Document Management

    Telerik Document Processing

    Desktop

    UI for .NET MAUI UI for WinUI UI for WinForms UI for WPF

    Reporting

    Telerik Reporting Telerik Report Server

    Testing & Mocking

    Test Studio Telerik JustMock

    CMS

    Sitefinity

    AI Productivity Tools

    AI Coding Assistants

    UI/UX Tools

    ThemeBuilder Design System Kit Templates and Building Blocks

    Debugging

    Fiddler Fiddler Everywhere Fiddler Classic Fiddler Everywhere Reporter FiddlerCore

    Free Tools

    KendoReact Free VB.NET to C# Converter Testing Framework
    View all products
  • Overview
  • Demos
    • What's New
    • Roadmap
    • Release History
  • Support and Learning

    • Support and Learning Hub
    • First Steps
    • Docs
    • Demos
    • Virtual Classroom
    • Forums
    • Videos
    • Blogs
    • Accessibility
    • Submit a Ticket

    Productivity and Design Tools

    • Visual Studio Extensions
    • Visual Studio Templates
    • Embedded Reporting
  • Pricing
  • Shopping cart
    • Account Overview
    • Your Licenses
    • Downloads
    • Support Center
    • Forum Profile
    • Payment Methods
    • Edit Profile
    • Log out
  • Login
  • Contact Us
  • Try now

Interface IComponentTreeHandler

Defines the contract for handling component tree operations and ambient property management in RadControls.

Inherited Members
ILayoutHandler.InvokeLayoutCallback(LayoutCallback)
ILayoutHandler.LayoutManager
Namespace: Telerik.WinControls
Assembly: Telerik.WinControls.dll

Syntax

public interface IComponentTreeHandler : ILayoutHandler
Remarks

IComponentTreeHandler extends ILayoutHandler to provide comprehensive component tree management capabilities including element tree creation, initialization, and ambient property handling. This interface is essential for RadControls that need to manage complex element hierarchies.

The interface handles ambient properties (properties that can be inherited from parent controls such as BackColor, ForeColor, and Font), theme management, tooltip support, and focus cues. It provides the foundation for RadControl's element tree architecture.

Implementers are responsible for creating and managing the root element, handling tree loading operations, and coordinating with the layout system to ensure proper rendering and behavior.

Properties

Behavior

Declaration
ComponentInputBehavior Behavior { get; }
Property Value
ComponentInputBehavior

ElementTree

Declaration
ComponentThemableElementTree ElementTree { get; }
Property Value
ComponentThemableElementTree

ImageList

Declaration
ImageList ImageList { get; set; }
Property Value
System.Windows.Forms.ImageList

ImageScalingSize

Declaration
Size ImageScalingSize { get; set; }
Property Value
System.Drawing.Size

Initializing

Declaration
bool Initializing { get; }
Property Value
System.Boolean

IsDesignMode

Declaration
bool IsDesignMode { get; }
Property Value
System.Boolean

Name

Declaration
string Name { get; set; }
Property Value
System.String

RootElement

Declaration
RootRadElement RootElement { get; }
Property Value
RootRadElement

SmallImageList

Declaration
ImageList SmallImageList { get; set; }
Property Value
System.Windows.Forms.ImageList

SmallImageScalingSize

Declaration
Size SmallImageScalingSize { get; set; }
Property Value
System.Drawing.Size

ThemeClassName

Declaration
string ThemeClassName { get; set; }
Property Value
System.String

ThemeName

Declaration
string ThemeName { get; set; }
Property Value
System.String

Methods

CallOnMouseCaptureChanged(EventArgs)

Declaration
void CallOnMouseCaptureChanged(EventArgs e)
Parameters
System.EventArgs e

CallOnScreenTipNeeded(Object, ScreenTipNeededEventArgs)

Declaration
void CallOnScreenTipNeeded(object sender, ScreenTipNeededEventArgs e)
Parameters
System.Object sender

ScreenTipNeededEventArgs e

CallOnThemeNameChanged(ThemeNameChangedEventArgs)

Declaration
void CallOnThemeNameChanged(ThemeNameChangedEventArgs e)
Parameters
ThemeNameChangedEventArgs e

CallOnToolTipTextNeeded(Object, ToolTipTextNeededEventArgs)

Declaration
void CallOnToolTipTextNeeded(object sender, ToolTipTextNeededEventArgs e)
Parameters
System.Object sender

ToolTipTextNeededEventArgs e

ControlDefinesThemeForElement(RadElement)

Declaration
bool ControlDefinesThemeForElement(RadElement element)
Parameters
RadElement element

Returns
System.Boolean

ControlThemeChangedCallback()

Declaration
void ControlThemeChangedCallback()

CreateChildItems(RadElement)

Declaration
void CreateChildItems(RadElement parent)
Parameters
RadElement parent

CreateRootElement()

Declaration
RootRadElement CreateRootElement()
Returns
RootRadElement

GetAmbientPropertyValue(RadProperty)

Returns the value for some ambient properties like BackColor, ForelColor, Font, etc.

Declaration
object GetAmbientPropertyValue(RadProperty property)
Parameters
RadProperty property

Returns
System.Object

GetShowFocusCues()

Declaration
bool GetShowFocusCues()
Returns
System.Boolean

InitializeRootElement(RootRadElement)

Declaration
void InitializeRootElement(RootRadElement rootElement)
Parameters
RootRadElement rootElement

InvalidateElement(RadElement)

Declaration
void InvalidateElement(RadElement element)
Parameters
RadElement element

InvalidateElement(RadElement, Rectangle)

Declaration
void InvalidateElement(RadElement element, Rectangle bounds)
Parameters
RadElement element

System.Drawing.Rectangle bounds

InvalidateIfNotSuspended()

Declaration
void InvalidateIfNotSuspended()

LoadElementTree()

Declaration
void LoadElementTree()

LoadElementTree(Size)

Declaration
void LoadElementTree(Size size)
Parameters
System.Drawing.Size size

OnAmbientPropertyChanged(RadProperty)

Updates after a change in an ambient property like BackColor, ForeColor, Font, etc.

Declaration
void OnAmbientPropertyChanged(RadProperty property)
Parameters
RadProperty property

OnCaptureChangeRequested(RadElement, Boolean)

Declaration
bool OnCaptureChangeRequested(RadElement element, bool capture)
Parameters
RadElement element

System.Boolean capture

Returns
System.Boolean

OnDisplayPropertyChanged(RadPropertyChangedEventArgs)

Declaration
void OnDisplayPropertyChanged(RadPropertyChangedEventArgs e)
Parameters
RadPropertyChangedEventArgs e

OnFocusRequested(RadElement)

Declaration
bool OnFocusRequested(RadElement element)
Parameters
RadElement element

Returns
System.Boolean

RegisterHostedControl(RadHostItem)

Declaration
void RegisterHostedControl(RadHostItem hostElement)
Parameters
RadHostItem hostElement

ResumeUpdate()

Declaration
void ResumeUpdate()

SuspendUpdate()

Declaration
void SuspendUpdate()

UnregisterHostedControl(RadHostItem, Boolean)

Declaration
void UnregisterHostedControl(RadHostItem hostElement, bool removeControl)
Parameters
RadHostItem hostElement

System.Boolean removeControl

Events

ThemeNameChanged

Declaration
event ThemeNameChangedEventHandler ThemeNameChanged
Event Type
ThemeNameChangedEventHandler

ToolTipTextNeeded

Declaration
event ToolTipTextNeededEventHandler ToolTipTextNeeded
Event Type
ToolTipTextNeededEventHandler

Extension Methods

SvgExtentions.Traverse<T>(T, Func<T, IEnumerable<T>>)
SvgExtentions.TraverseDepthFirst<T>(T, Func<T, IEnumerable<T>>)
Getting Started
  • Install Now
  • Demos
  • Step-by-Step Tutorial
  • Sample Applications
  • SDK Samples
  • Visual Studio Extensions
Support Resources
  • Code Library
  • Knowledge Base
  • Videos
Community
  • Forums
  • Blogs
  • Feedback Portal
  • Document Processing Feedback Portal

Copyright © 2018 Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.

Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks for appropriate markings.