Treeview节点在单击文本

时间:2015-09-04 06:31:08

标签: treeview

我有一个树视图,其中有两个子节点parentID 0和一个没有ID的主节点。

Root Node
0--> Child 1

0--> Child 2`

问题是每当我点击Child 2时,Child 1节点就会被扩展。我已经检查过使用断点并发现每当我点击Child 2时,selectednode.text显示Child 1.如何清除它?

    `Treeview1_SelectedNodeChanged()
    {
    Datatable dt = //Treeview binding
    ds.tables.add(dt);
    TreeNode selectedNode = New TreeNode();
    selectedNode = this.Treeview1.SelectedNode.Text;
    }`

即使我单击第二个子节点,selectedNode也始终显示第一个Child节点的文本。我使用数据表从SQL表绑定树。

树视图绑定的代码如下

“pageLoad的()     {         (!的IsPostBack)         {             this.GetParentNodes();         }     }

public void GetParentNodes()
{
    try
    {
        TreeNode topNode = New TreeNode();
        topNode.Text = "Reference Document";
        topNode.Value = "0";
        topNode.SelectAction = TreeNodeSelectAction.SelectExpand();
        topNode.CollapseAll();
        TreeView1.Nodes.Add(topNode);
        DataTable dt = obj.SelectDocument("DocumentId");
        ds.Tables.Add(dt);
    ds.Relations.Add("ChildRow",ds.Tables[0]Columns["Id"],ds.Tables[0]Columns["ParentId"],false);
        foreach(DataRow firstDataRows in ds.Tables[0]Rows)
        {
            if(Convert.toInt32(firstDataRows["ParentId"] == 0)
            {
                TreeNode parentTreeNode = New TreeNode();
                parentTreeNode.Text = firstDataRows["FolderName"].ToString();
                parentTreeNode.Value = firstDataRows["ParentId"].ToString();
                parentTreeNode.SelectAction =                                         TreeNodeSelection.SelectExpand();
                parentTreeNode.CollapseAll();
                parentTreeNode.Selected = True;
                topNode.ChildNodes.Add(parentTreeNode);
                GetChildNodes(firstDataRows,parentTreeNode);
            }'

谢谢&问候, SAJ

1 个答案:

答案 0 :(得分:0)

通过进行如下所述的小改变来解决上述问题......

通过改变



parentTreeNode.Value = firstDataRows["ParentId"].ToString();

to 

parentTreeNode.Value = firstDataRows["Id"].ToString();




谢谢&问候, Sajin A