Asp.net:树视图和索引超出范围
我的代码中有一个树视图(Tree1),我将使用Asp.net:树视图和索引超出范围,asp.net,treeview,treenode,Asp.net,Treeview,Treenode,我的代码中有一个树视图(Tree1),我将使用createtree()方法在depth中添加节点。在调试中,我了解到这一行 (Tree1.Nodes[i].ChildNodes.Add(new TreeNode(i.ToString())))不会导致向树中添加节点,因此循环中的错误为: 索引超出范围。必须为非负数且小于集合的大小。 参数名称:索引 有人能告诉我如何将子节点添加到某个节点吗? <asp:TreeView ID="Tree1" runat="server" > &l
createtree()
方法在depth中添加节点。在调试中,我了解到这一行
(Tree1.Nodes[i].ChildNodes.Add(new TreeNode(i.ToString()))
)不会导致向树中添加节点,因此循环中的错误为:
索引超出范围。必须为非负数且小于集合的大小。
参数名称:索引
有人能告诉我如何将子节点添加到某个节点吗?
<asp:TreeView ID="Tree1" runat="server" >
</asp:TreeView>
背后的代码是:
protected void CreateTree( )
{
Tree1.Nodes.Add(new TreeNode("0"));
for (int i = 0; i < 4; i++)
Tree1.Nodes[i].ChildNodes.Add(new TreeNode(i.ToString()));;
}
受保护的void CreateTree()
{
添加(新的树节点(“0”));
对于(int i=0;i<4;i++)
Tree1.Nodes[i].ChildNodes.Add(新的TreeNode(i.ToString());;
}
您能否尝试使用以下代码,因为在专利级别,您只添加了1条记录,并且尝试在四个不同的父节点上添加新的子节点
protected void CreateTree( )
{
Tree1.Nodes.Add(new TreeNode("0"));
for (int i = 0; i < 4; i++)
Tree1.Nodes[0].ChildNodes.Add(new TreeNode(i.ToString()));;
}
受保护的void CreateTree()
{
添加(新的树节点(“0”));
对于(int i=0;i<4;i++)
Tree1.Nodes[0].ChildNodes.Add(新的TreeNode(i.ToString());;
}
这应该可以满足您的需求:
protected void CreateTree()
{
Tree1.Nodes.Add(new TreeNode("0"));
TreeNode currentNode = Tree1.Nodes[0];
for (int i = 0; i < 4; i++)
{
currentNode.ChildNodes.Add(new TreeNode(i.ToString()));
currentNode = currentNode.ChildNodes[0];
}
}
受保护的void CreateTree()
{
添加(新的树节点(“0”));
TreeNode currentNode=Tree1.Nodes[0];
对于(int i=0;i<4;i++)
{
添加(新的TreeNode(i.ToString());
currentNode=currentNode.ChildNodes[0];
}
}
您将得到5个节点,每个节点下各有一个。它只是将一个子节点添加到根节点,但我想深入添加节点我的意思是我想为节点[1]添加子节点。很抱歉,我没有得到您的要求。你能用编辑问题用图片解释一下吗?@Naresh Pansuriya:我已经有了一个节点作为循环中的根节点,我要在最后一个节点上添加一个子节点