Member 12926744 Ответов: 1

Получение значения родительского узла и дочернего узла в treeview


Всем привет,

У меня есть treeview с корневым узлом,дочерним узлом и дочерними узлами.При щелчке дочернего узла мне нужно получить значение этого узла и его родительское значение во всплывающем окне.Я буду.Любая помощь будет очень признательна .Заранее спасибо.


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

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


На узле subchild нажмите кнопку Мне нужно получить значения узлов в всплывающее окно удлинитель .Однако он показывает ноль.

Что я уже пробовал:

 <asp:TreeView ID="TreeView1" OnSelectedNodeChanged="TreeView1_SelectedNodeChanged" 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>



 public void calltree(object sender, TreeNodeEventArgs e)
       {

           switch (e.Node.Depth)
           {
               case 0:
                   HeaderTitle(e.Node);
                   break;
               case 1:
                    LinkURL(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 LinkURL(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.ImageUrl = "~/images/office2003_contacts.gif";

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

        }
<pre> protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
        {
            
            int index = TreeView1.Nodes.IndexOf(TreeView1.SelectedNode); 
          
              
           TreeView1.SelectedNode.Selected = true;
            if (TreeView1.SelectedNode.Value != "")
            {
                lbl_supname.Text = TreeView1.SelectedNode.Value;
                lbl_drugname.Text = "";
                mpe_First.Show();
                pnl_First.Visible = true;
                UpdatePanel1.Update();
                UpdatePanel1_1.Update();
            }
            else
            {
                mpe_First.Hide();
                //UpdatePanel1.Update();
                pnl_First.Visible = false;
                UpdatePanel1.Update();
            }
            
        }

1 Ответов

Рейтинг:
1

Gerry Schmitz

Вы можете рекурсивно найти родительский узел использование свойства "родитель" узла:

объект TreeNode.Свойства Parent (Системы.Веб.Пользовательского интерфейса.WebControls)[^]