现在要实现:点击某结点后1。 取得结点名
2。 关闭其他已打开结点
3(触发其他事件等)熟悉的朋友给点意见

解决方案 »

  1.   

    TreeNode node = this.treeView1.SelectedNode;
    string name=node.Name;//获取节点名字
    TreeNode nodeall = this.treeView1.CollapseAll();//折叠所有节点
    //触发其他事件等
      

  2.   

    那trewview的点击事件怎么写?
    <asp:TreeView ID="TreeView1" runat="server" ImageSet="XPFileExplorer" NodeIndent="15" OnSelectedNodeChanged="TreeView1_SelectedNodeChanged">public void TreeView1_SelectedNodeChanged(Object sender, EventArgs e)
    {}用这个可以吗?
      

  3.   

    winform中有AfterSelecte 不知道webform有没有。看名字好像可以。可以自己试试效果是不是想要的。
      

  4.   

    名字已经可以拿到,但为什么每次调用TreeView1_SelectedNodeChanged的事件的时候都会刷出一个新的treeview?
      

  5.   

    楼主把TreeView1_SelectedNodeChanged的代码贴出来看看
      

  6.   

    public void TreeView1_SelectedNodeChanged(Object sender, EventArgs e)
        {
            TreeView1.CollapseAll();//折叠所有节点
            TreeNode Selected = this.TreeView1.SelectedNode;
            Selected.Parent.Expand();
            Selected.Expand();
            string name = Selected.Value.ToString();//获取节点名字
            //触发其他事件等
        }
      

  7.   

    public void TreeView1_SelectedNodeChanged(Object sender, EventArgs e)
        {
            TreeNode Selected = this.TreeView1.SelectedNode;        
            TreeView1.CollapseAll();//折叠所有节点
            Selected.Parent.Expand();
            Selected.Expand();
            string name = Selected.Value.ToString();//获取节点名字
            //触发其他事件等
        }
      

  8.   

    Selected.Parent.Expand();//这里最好判断一下Parent是否为NULL
      

  9.   

    谢谢!但是为什么每次调用TreeView1_SelectedNodeChanged的事件的时候都会刷出一个新的treeview?
      

  10.   

    楼主检查下是不是在触发其他事件重新实例了一个treeview