Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net:树视图和索引超出范围_Asp.net_Treeview_Treenode - Fatal编程技术网

Asp.net:树视图和索引超出范围

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

我的代码中有一个树视图(Tree1),我将使用
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:我已经有了一个节点作为循环中的根节点,我要在最后一个节点上添加一个子节点