Click here to Skip to main content
15,892,809 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi all,
I have a treeview with a root node,a child node and subchild nodes .What I need is that I need to add a button to each subchild nodes . On click of that button I need to populate a popupextender with that subchild node id .Any help will really appreciated .Thanks in advance.


Expected view :

*Root Node 
      
            1.child node 1
                       *(subchild node 1)  BUTTON 
                       *(subchild node 2)  BUTTON

            2.child node 2
                    
                       *(subchild node 1)  BUTTON
                       *(subchild node 2)  BUTTON


What I have tried:

  <asp:TreeView ID="TreeView1" EnableClientScript="true"  PopulateNodesFromClient="true"                              OnTreeNodePopulate="calltree" Font-Size="8pt"   runat="server" ShowLines="True" HoverNodeStyle-Font-Underline="True" SelectedNodeStyle-Font-Bold="True"  ParentNodeStyle-ForeColor="Black">
<Nodes>
<asp:TreeNode Text="Chart Of Cars" Selected="true" SelectAction="Expand" PopulateOnDemand="true"/>
 </Nodes>
                                                    </asp:TreeView>






Codebehind:


  public void calltree(object sender, TreeNodeEventArgs e)
       {

           switch (e.Node.Depth)
           {
               case 0:
                   HeaderTitle(e.Node);
                   break;
               case 1:
                   HeaderSubTitle(e.Node);
                   break;

               default:
                   break;
           }
       }

       public void HeaderTitle(TreeNode node)
       {
           DataSet ds_ParentNode = objcon.GetDataSet("select distinct ProfileID,profilename from profile
");

           foreach (DataRow row in ds_ParentNode.Tables[0].Rows)
           {
               TreeNode newNode = new TreeNode();
               newNode.Text = row["ProfileID"].ToString() + ' ' + row["profilename"].ToString();
               newNode.Value = row["ProfileID"].ToString();

               newNode.Expanded = false;
               newNode.SelectAction = TreeNodeSelectAction.Expand;
               newNode.PopulateOnDemand = true;
               node.ChildNodes.Add(newNode);
           }

       }

       public void HeaderSubTitle(TreeNode node)
       {
           DataSet ds_SubNode = objcon.GetDataSet("select distinct Profileext,profilepart from profilesert  where  ProfileID='" + node.Value + "'");
           foreach (DataRow row in ds_SubNode.Tables[0].Rows)
           {
               TreeNode newNode = new TreeNode();
               newNode.Text = row["Profileext"].ToString() + ' ' + row["profilepart"].ToString();
               newNode.Value = row["Profileext"].ToString();

               newNode.Expand();
               newNode.SelectAction = TreeNodeSelectAction.Expand;
               newNode.PopulateOnDemand = true;
               newNode.Expanded = false;
               node.ChildNodes.Add(newNode);
           }

       }
Posted

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900