2017-06-20 76 views
8

Düğüm genişletilirken bir ağaç düğümünü değiştirmeye çalışıyorum (ana düğüm). Değiştirmek iyi çalışıyor. Fakat genişleme gerçekleşmiyor. Etrafta iş var mı? AşağıdaDüğüm genişletildikten sonra genişlemeyen Treenode

Kodu:

<asp:TreeView ID="tvContentTree" runat="server" RootNodeStyle-CssClass="RootAllKeys" 
      ParentNodeStyle-CssClass="ParentAllKeys" ShowCheckBoxes="All" ImageSet="Simple" NodeIndent="10" OnTreeNodeExpanded="Populate_Node" > 
       <HoverNodeStyle Font-Underline="True" ForeColor="#DD5555" /> 
       <NodeStyle Font-Names="Verdana" Font-Size="8pt" ForeColor="Black" HorizontalPadding="0px" NodeSpacing="0px" VerticalPadding="0px" /> 
       <ParentNodeStyle Font-Bold="False" /> 
       <SelectedNodeStyle Font-Underline="True" ForeColor="#DD5555" HorizontalPadding="0px" VerticalPadding="0px" /> 
      </asp:TreeView> 


public void Populate_Node(Object sender, TreeNodeEventArgs e) 
    {  
     foreach (System.Web.UI.WebControls.TreeNode tn in tvContentTree.Nodes) 
     { 
      tn.ChildNodes.RemoveAt(1); 
      tn.ChildNodes.AddAt(1,ParentNode);     
     } 
    } 

i satırını yorum yaparsanız

"tn.ChildNodes.RemoveAt (1);"

Ardından genişletme düzgün çalışıyor. Yani kaldır işlevi, soruna neden oluyor.

+0

Değişken nodeIndex'in değeri nedir? – ali

+0

sadece bir sayısal indeks değeri, sadece 1 olarak alın – SmartestVEGA

+0

i nodeindex değişkenini kaldırdım soru – SmartestVEGA

cevap

1

Düğümü, adı & ile bulmalı ve sonra onu kaldırmalısınız.

TreeNode tn = tvContentTree.FindNode("tn1"); 
tn.ChildNodes.RemoveAt(1);