Last Updated: 09 Sep 2021 09:50 by ADMIN
Release R3 2017 (version 2017.3.912)
Currently we do not support binding to the ToggleState.Indeterminate state automatically because it would require a change in the behavior of the Checked property. If you use the CheckedMember, the ToggleState.Indeterminate state is represent like ToggleState.On. 

Subscribe to the NodeFormatting and NodeCheckedChanged events: 
void radTreeView1_NodeFormatting(object sender, Telerik.WinControls.UI.TreeNodeFormattingEventArgs e)
    Child child = e.Node.DataBoundItem as Child;
    if (child != null)
        e.Node.CheckState = child.Status;

void radTreeView1_NodeCheckedChanged(object sender, Telerik.WinControls.UI.TreeNodeCheckedEventArgs e)
    Child child = e.Node.DataBoundItem as Child;
    if (child != null)
        child.Status = e.Node.CheckState;
Last Updated: 27 Aug 2021 10:27 by ADMIN
Release R3 2021

1. Start WinAppDriver.exe

2. Open the attached sample solution

3. Click "Run all" tests 

You will see that the test will not be able to locate any RadTreeNode elements located outside of the first parent node collection. Note that the test uses "FindElementByName("name")" method. 

Last Updated: 27 Aug 2021 09:40 by ADMIN

Please run the attached sample project and follow the steps in the attached gif file. You will notice that the nodes are displayed multiple times.

Workaround: it seems that if the BeginUpdate/EndUpdate methods are not used in the PerformNodeMove methods, the issue is not reproducible

Last Updated: 10 Jun 2021 13:34 by ADMIN
Release R2 2021 SP1

Please refer to the attached sample project and try to edit a node. In random situations the Node argument in the Edited event is null or points to a wrong data node:

Last Updated: 10 Jun 2021 12:57 by ADMIN
Release R2 2021 SP1

I am using RadTreeView and setting FullRowSelect = false. This works for Windows7 them but doesn't work for Fluent theme.

Last Updated: 15 Feb 2021 10:40 by ADMIN
Release R1 2021 SP2

Steps to reproduce:

1. Set SortOrder to Ascending

2. Rename a root node


Last Updated: 15 Feb 2021 10:35 by ADMIN
Release R1 2021 SP2
If you have a node with a very long text that requires horizontal scrollbar and at the same time you have a many nodes which requires a vertical scrollbar in some border cases the long text of the node is cut off (with ellipsis).
Last Updated: 08 Feb 2021 10:08 by ADMIN

Code snippet for reproducing the problem:


    Private Sub RadForm1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        AddHandler Me.RadTreeView1.NodeDataBound, AddressOf RadTreeView1_NodeDataBound

        Me.RadTreeView1.DataSource = Me.ArtistsBindingSource
        Me.RadTreeView1.DisplayMember = "ArtistName"
        Me.RadTreeView1.ValueMember = "ArtistID"
        Me.RadTreeView1.RelationBindings.Add(New RelationBinding(Me.AlbumsBindingSource, "AlbumName", "ArtistID", "ArtistID", "AlbumID"))
        Me.RadTreeView1.RelationBindings.Add(New RelationBinding(Me.SongsBindingSource, "SongName", "AlbumID", "AlbumID", "SongID"))
        Me.RadTreeView1.CheckBoxes = True
        Me.RadTreeView1.AutoCheckChildNodes = True
        Me.RadTreeView1.TriStateMode = True
    End Sub

    Private Sub RadTreeView1_NodeDataBound(sender As Object, e As RadTreeViewEventArgs)
        If e.Node.Level = 0 Then
            e.Node.CheckType = CheckType.None
            e.Node.CheckType = CheckType.CheckBox
        End If
    End Sub

Workaround: instead of using the NodeDataBound  event, use the NodeFormatting event to hide the checkboxes for the desired nodes:

    Private Sub RadTreeView1_NodeFormatting(sender As Object, e As TreeNodeFormattingEventArgs)
        If e.Node.Level = 0 Then
            e.NodeElement.ToggleElement.Visibility = Telerik.WinControls.ElementVisibility.Collapsed
            e.NodeElement.ToggleElement.Visibility = Telerik.WinControls.ElementVisibility.Visible
        End If
    End Sub

Last Updated: 15 Dec 2020 13:35 by ADMIN
Release R1 2021
Currently, the checkboxes in the tree view are not exported. 
Last Updated: 15 Dec 2020 09:27 by ADMIN
Release R1 2021 (LIB 2020.3.1215)


  on the Winform Demo application, go to the TreeView demos, and selection "Selection".
1) select the "Folders" item listed under the "Inbox" item.

2) Collapse the "Inbox" item by clicking the ARROW next to the "Inbox"

3) Hold down the SHIFT key and left-mouse click on the "Outbox" item, you end up with a selection all the way up the tree to the ROOT element

Need More Info
Last Updated: 02 Dec 2020 14:37 by ADMIN
Created by: avani
Comments: 1
Category: TreeView
Type: Bug Report

Hi All,


I have made User control for custom node, in this user control i have used following controls

1 RadLabel (no of control - 3)

2 RadPanel (no of control -1)

3 PictureBox (no of Control - 4 )

4 TableLayoutPanel (no of control -3)

Means i have used total 11 controls within my user control.

Height of usercontrol = 146

Width of Usercontrol = 595


I have taken RadTreeView and above UserControl added as Node,following properties of treeview is set

this.radTreeView1.DataSource = Staff.GetStaff();
            this.radTreeView1.ParentMember = "ParentID";
            this.radTreeView1.ChildMember = "ID";
            this.radTreeView1.DisplayMember = "Department";
            this.radTreeView1.CreateNodeElement += this.OnCreateNodeElement;

this.radTreeView1.TreeViewElement.AutoSizeItems = true;
            this.radTreeView1.ShowRootLines = false;
            this.radTreeView1.FullRowSelect = false;
            this.radTreeView1.ShowLines = true;
            this.radTreeView1.LineStyle = TreeLineStyle.Solid;
            this.radTreeView1.LineColor = Color.FromArgb(110, 153, 210);
            this.radTreeView1.TreeIndent = 50;



But when i run the code it shows like this means my control is not displaying and the property "AutoSizeItems" is not working.


hope for quick reply

Last Updated: 23 Jul 2020 15:57 by ADMIN
Release R3 2020 (LIB 2020.2.727)

I don't see the original mouse arguments on the RadTreeViewEventArgs of the NodeMouseClick Event?

Am I missing something?

How can I get the mouse button (left or right) on a nodeMouseClick event?
Last Updated: 21 Jul 2020 12:19 by ADMIN
Release R3 2020 (LIB 2020.2.727)

How to reproduce:

    DataTable table = new DataTable();
    table.Columns.Add("ParentId", typeof(int));
    table.Columns.Add("ChildId", typeof(int));
    table.Columns.Add("ProductId", typeof(int));
    table.Columns.Add("ProductCode", typeof(string));

    table.Rows.Add(0, 1, 3, "Pr - 01");
    table.Rows.Add(1, 2, 4, "P r- 02");
    table.Rows.Add(1, 3, 5, "Pr - 03");

    this.radTreeView1.DisplayMember = "ProductCode";
    this.radTreeView1.ParentMember = "ParentId"; 
    this.radTreeView1.ChildMember = "ChildId"; 
    this.radTreeView1.ValueMember = "ProductId";
    this.radTreeView1.DataSource = table;

Last Updated: 12 Jun 2020 16:01 by ADMIN
Release R2 2020 SP1
Hi Guys,

I'm crashing an app with TreeViewControl when open dialog is shown and you double click on file in that dialog and file current location is above treeview nodes.

Added example and animated gif so you can also try.


************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at Telerik.WinControls.UI.RadTreeViewElement.FindSelectionStartAndEndNodes(RadTreeNode nodeUnderMouse, RadTreeNode& fromNode, RadTreeNode& toNode)
   at Telerik.WinControls.UI.RadTreeViewElement.ProcessMouseSelection(Point location)
   at Telerik.WinControls.UI.RadTreeViewElement.ProcessMouseMove(MouseEventArgs e)
   at Telerik.WinControls.UI.RadTreeView.OnMouseMove(MouseEventArgs e)
   at System.Windows.Forms.Control.WmMouseMove(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at Telerik.WinControls.RadControl.WndProc(Message& m)
   at Telerik.WinControls.UI.RadTreeView.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


Best regards

Last Updated: 04 Jun 2020 09:51 by ADMIN
Please refer to the attached gif file for better illustration.
Last Updated: 06 May 2020 07:24 by ADMIN

Add a RadTreeView and fill it with nodes so that a vertical scrollbar is shown.

The RadTreeView.TopNode property indicates that it is expected to return the RadTreeNode which visual node element is the first visible one in the current view. But it always return the first data node in RadTreeView no matter which node is currently visible at the top. This is because it consider the RadTreeNode.Visible property. 


            TreeNodeElement neFirstVisible = this.radTreeView1.TreeViewElement.ViewElement.Children[0] as TreeNodeElement;
            RadMessageBox.Show("TopNode = " + neFirstVisible.Data.Text);

Last Updated: 20 Apr 2020 06:36 by ADMIN

Please run the attached sample project and follow the steps illustrated in the gif file. You will notice the following behavior:

If you select multiple items/nodes and then right click on the last selected item/node, the context menu comes up as expected and multiple selection is kept. But if you right click on any other item/node that is selected,the selected nodes become unselected and only the node you are over becomes selected. 

The multiple selection is kept in Windows Explorer and VS Solution explorer wne you right click over an already selected node.


        public RadForm1()

            this.radTreeView1.MultiSelect = true;
            this.radTreeView1.AllowDefaultContextMenu = true; 

        class CustomTreeViewElement : RadTreeViewElement
            protected override Type ThemeEffectiveType
                    return typeof(RadTreeViewElement);

            protected override bool ProcessMouseDown(MouseEventArgs e)
                if (e.Button == MouseButtons.Right)
                    RadContextMenu menu = this.ContextMenu; 
                    RadTreeNode node = this.GetNodeAt(e.Location);
                    if (node!=null)
                        node.Selected = true;
                    if (node != null && node.ContextMenu != null)
                        menu = node.ContextMenu;
                    if (menu == null && this.AllowDefaultContextMenu)
                        menu = this.InitializeDefaultContextMenu(node);
                    if (menu != null)
                        RadControl parentControl = (this.ElementTree.Control as RadControl);

                        if (parentControl != null)
                            menu.ThemeName = parentControl.ThemeName;
                            menu.DropDown.RightToLeft = parentControl.RightToLeft;

                        TreeViewContextMenuOpeningEventArgs args = new TreeViewContextMenuOpeningEventArgs(node, menu, this);

                        if (!args.Cancel)
                            menu.Show(this.ElementTree.Control, e.Location);
                            return true;
                return base.ProcessMouseDown(e);

        class CustomTreeView : RadTreeView
            protected override RadTreeViewElement CreateTreeViewElement()
                return new CustomTreeViewElement();
            public override string ThemeClassName
                    return typeof(RadTreeView).FullName;

            protected override void WndProc(ref Message m)
                switch (m.Msg)
                    case 0x7b:

                base.WndProc(ref m);

Last Updated: 17 Feb 2020 11:56 by ADMIN
Release R1 2020 SP1


While testing the exporting feature of RadTreeView, I noticed the following issue :

Using the code below , everything works just fine :

Me.RadTreeView1.RightToLeft = System.Windows.Forms.RightToLeft.Yes
Dim exporter As TreeViewSpreadExport = New TreeViewSpreadExport(Me.RadTreeView1)
AddHandler exporter.CellFormatting, AddressOf exporter_CellFormatting
exporter.ExportFormat = SpreadExportFormat.Xlsx
exporter.ExportVisualSettings = False
exporter.ExportImages = False
exporter.ExportChildNodesGrouped = True
exporter.CollapsedNodeOption = HiddenOption.ExportAlways
Dim renderer As SpreadExportRenderer = New SpreadExportRenderer()
exporter.RunExport("D:\test.xlsx", renderer)


But, the following line of the code raises an error in a specific circumasntance (I describe it more, further in the thread)   :

exporter.RunExport("D:\test.xlsx", renderer)


Error Screenshot is attached : 1.jpg

Details about the error :

  Message=value should be greater or equal than 0 and less or equal than 7.
Parameter name: value
at Telerik.WinControls.UI.RadButtonBase.buttonElement_Click(Object sender, EventArgs e)
   at Telerik.WinControls.RadElement.OnClick(EventArgs e)
   at Telerik.WinControls.UI.RadButtonElement.OnClick(EventArgs e)
   at Telerik.WinControls.RadElement.DoClick(EventArgs e)
   at Telerik.WinControls.RadElement.RaiseBubbleEvent(RadElement sender, RoutedEventArgs args)
   at Telerik.WinControls.RadItem.RaiseBubbleEvent(RadElement sender, RoutedEventArgs args)
   at Telerik.WinControls.RadElement.RaiseRoutedEvent(RadElement sender, RoutedEventArgs args)
   at Telerik.WinControls.ComponentInputBehavior.OnMouseUp(MouseEventArgs e)
   at Telerik.WinControls.RadControl.OnMouseUp(MouseEventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at Telerik.WinControls.RadControl.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
   at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
   at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
   at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
   at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)



The Specific Circumstance :

In my RadTreeView's NodeMouseClick , I add some child nodes to the node which is clicked, at runtime :

Dim _Node1 As RadTreeNode = e.Node.Nodes.Add("Node 1")
Dim _Node2 As RadTreeNode = e.Node.Nodes.Add("Node 2")
Dim _Node3 As RadTreeNode = e.Node.Nodes.Add("Node 3")


Then I found out that setting "exporter.ExportChildNodesGrouped" to True causes the error. But if it is set to false, no error raised even in the above Circumstance.

P.S  Normally setting "exporter.ExportChildNodesGrouped" to True or False doesn't cause any error, but adding some child nodes at run time surly does.


Thanks for your attention.


Last Updated: 30 Jan 2020 17:06 by ADMIN
Created by: Uladzislau
Comments: 1
Category: TreeView
Type: Bug Report

Add a CodedUI test which records expanding a node in RadTreeView. Run the CodedUI test and you will see that the TestMethod throws the following exception:

"Microsoft.VisualStudio.TestTools.Extension.UITestControlNotFoundException: The playback failed to find the control with given search properties."

Last Updated: 30 Jan 2020 09:34 by ADMIN
Release R3 2018
Please refer to the attached sample project. Run the application on a WIndows 10 machine. Switch on the Narrator and try to expand a node then the EnableRadAccessibilityObjects  property is set to true.

Workaround: set the EnableRadAccessibilityObjects property to false.
1 2 3 4 5 6