0
protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
{
    string input = TreeView1.SelectedValue.ToString();
    DataSet ds = new DataSet();
    TreeLogic bl = new TreeLogic();
    TreeNode root= new TreeNode(input);
    ds = bl.getChild(input);
    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
    {
        TreeNode tnode = new TreeNode(ds.Tables[0].Rows[i][1].ToString());
        tnode.SelectAction = TreeNodeSelectAction.Expand;
        root.ChildNodes.Add(tnode);
    }
}

当我选择父节点时,子节点不显示。谁能告诉我为什么?

4

2 回答 2

0

编辑:如果您尝试将这些新节点添加为所选节点的子节点,那么您做错了 =) 您需要这样做:

for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
    TreeNode tnode = new TreeNode(ds.Tables[0].Rows[i][1].ToString());
    tnode.SelectAction = TreeNodeSelectAction.Expand;
    // Add the new TreeNodes underneath the currently selected TreeNode.
    TreeView1.SelectedNode.ChildNodes.Add(tnode);
}
TreeView1.SelectedNode.Expand();
于 2012-05-18T13:39:27.763 回答
0

在我看来,您正在将子节点添加到 root,这是一个仅在本地创建的节点,不属于您的 TreeView。

于 2012-05-18T13:41:32.680 回答