Articles in this section
Category / Section

How to expand TreeViewItem based on DragOverExpandDelay Timespan Property while dragging the item over the node?

1 min read

You can expand TreeViewItem based on the DragOverExpandDelay Timespan property while dragging the item over the node.

TreeViewAdv represents a new time span property called DragOverExpandDelay, that is used to define how long the TreeViewItem needs to wait before it expands, while dragging over the item.

You can achieve the above using the following code example.

XAML

//To expand TreeViewItem based on DragOverExpandDelay
         <syncfusion:TreeViewAdv DragOverExpandDelay="0:0:5" AllowDragDrop="True">
            <syncfusion:TreeViewItemAdv Header="Root1">
                <syncfusion:TreeViewItemAdv Header="Root1Item1"/>
                <syncfusion:TreeViewItemAdv Header="Root1Item2"/>
                <syncfusion:TreeViewItemAdv Header="Root1Item3"/>
                <syncfusion:TreeViewItemAdv Header="Root1Item4"/>
            </syncfusion:TreeViewItemAdv>
            <syncfusion:TreeViewItemAdv Header="Root2">
                <syncfusion:TreeViewItemAdv Header="Root1Item1"/>
                <syncfusion:TreeViewItemAdv Header="Root1Item2"/>
                <syncfusion:TreeViewItemAdv Header="Root1Item3"/>
                <syncfusion:TreeViewItemAdv Header="Root1Item4"/>
            </syncfusion:TreeViewItemAdv>
            <syncfusion:TreeViewItemAdv Header="Root3">
                <syncfusion:TreeViewItemAdv Header="Root1Item1"/>
                <syncfusion:TreeViewItemAdv Header="Root1Item2"/>
                <syncfusion:TreeViewItemAdv Header="Root1Item3"/>
                <syncfusion:TreeViewItemAdv Header="Root1Item4"/>
            </syncfusion:TreeViewItemAdv>
        </syncfusion:TreeViewAdv>

C#

//C# code demonstrates how to expand TreeViewItem based on DragOverExpandDelay
            TreeViewAdv treeViewAdv = new TreeViewAdv();
            treeViewAdv.AllowDragDrop = true;
            treeViewAdv.DragOverExpandDelay = new TimeSpan(0, 0, 5);
            TreeViewItemAdv rootItem1 = new TreeViewItemAdv() { Header = "Root1" };
            TreeViewItemAdv treeViewItem1 = new TreeViewItemAdv() { Header = "Root1Item1" };
            TreeViewItemAdv treeViewItem2 = new TreeViewItemAdv() { Header = "Root1Item2" };
            rootItem1.Items.Add(treeViewItem1);
            rootItem1.Items.Add(treeViewItem2);
            TreeViewItemAdv rootItem2 = new TreeViewItemAdv() { Header = "Root2" };
            TreeViewItemAdv treeViewItem3 = new TreeViewItemAdv() { Header = "Root1Item1" };
            TreeViewItemAdv treeViewItem4 = new TreeViewItemAdv() { Header = "Root1Item2" };
            rootItem2.Items.Add(treeViewItem3);
            rootItem2.Items.Add(treeViewItem4);
            treeViewAdv.Items.Add(rootItem1);
            treeViewAdv.Items.Add(rootItem2);
            grid.Children.Add(treeViewAdv);

The following screenshot displays the delay applied for the TreeViewItem.

 

Figure 1: Delay applied for the TreeViewItem

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments (0)
Please sign in to leave a comment
Access denied
Access denied