This is a migrated thread and some comments may be shown as answers.

Maintain RadTreeview ExpandState

1 Answer 87 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
Chamara
Top achievements
Rank 1
Chamara asked on 28 Oct 2011, 03:37 PM
Im using following code to bind RadTreeView on my master page.i need to maintain expand state of the treeview on postbacks.how can i do this with the following code

    public void GenrateTreeView()
    {
        DataSet myDataSet;
        if (sUserName.Trim().ToLower() == "lyle.stanley")
             myDataSet = GetData3();
        else if (sUserName.Trim().ToLower() == "aaron.mchugh")
            myDataSet = GetData3();
        else if (sUserName.Trim().ToLower() == "deven.sumputh")
            myDataSet = GetData3();
        else if (sUserName.Trim().ToLower() == "arun.thavasi")
            myDataSet = GetData3();
        else if (sUserName.Trim().ToLower() == "warren.farrow")
            myDataSet = GetData();
        else if (sUserName.Trim().ToLower() == "jude.clephas")
            myDataSet = GetData();
        else if (sUserName.Trim().ToLower() == "david.moran")
            myDataSet = GetData();
        else if (sUserName.Trim().ToLower() == "emilee.macdonald")
            myDataSet = GetData3();
        else
            myDataSet = GetData2();
        RadTreeNode parentHome = new RadTreeNode("PinC Document Control System");
  
        treeView.Nodes.Add(parentHome);
     
        treeView.ShowLineImages = true;
        treeView.Skin = "Web20";
        lchilNodes.Clear();
 


        try
        {
            foreach (DataRow parentRow in myDataSet.Tables["tblParent"].Rows)
            {
              
                RadTreeNode parentNode = new RadTreeNode((string)parentRow["ParentName"]);
              
                treeView.Nodes.Add(parentNode);
               


                foreach (DataRow childRow in parentRow.GetChildRows("Child"))
                {


                    RadTreeNode childNode = new RadTreeNode((string)childRow["ChildName"]);
                    if (lchilNodes.Exists(delegate(RadTreeNode match)
                    {
                        return match.Text == childNode.Text;
                    }
                            ))
                    {
                        lchilNodes.Remove(new RadTreeNode(childNode.Text));


                    }
                    else
                    {
                        lchilNodes.Add(new RadTreeNode(childNode.Text));
                       
                        parentNode.Nodes.Add(childNode);
                    
                    }
                }




            }
        }


        catch (Exception ex)
        {


        }
        finally
        {
        
        }


    }

1 Answer, 1 is accepted

Sort by
0
Shinu
Top achievements
Rank 2
answered on 29 Oct 2011, 05:47 AM
Hello Chamara,

Check the following code library which explains how to save the expanded state of the RadTreeView.
Save the expanded state of the TreeNodes when the treeview is being bound upon each postback

Thanks,
Shinu.
Tags
General Discussions
Asked by
Chamara
Top achievements
Rank 1
Answers by
Shinu
Top achievements
Rank 2
Share this question
or