我用TreeView1.SelectedNodeIndex得到treeview中当前被选中的节点,他的格式如下:
   0.1---意思是第一层的0节点的第二个子节点
   0.1.2---第一层的0节点的第二个子节点的第三个子节点
   我不知道该如何对这些节点进行操作(如:删除,更名等)。
得到当前被选中的节点:
   Private Sub TreeView1_SelectedIndexChange()
        TextBox1.Text = TreeView1.SelectedNodeIndex
    End Sub在线等。!!!!

解决方案 »

  1.   

    dim tmp as treenode = this.TreeView1.GetNodeFromIndex(this.TreeView1.SelectedNodeIndex)
      

  2.   

    谢谢Eddie005(♂) 暴赱 『零零伍』(︶︵︶)   搞定了。哈哈哈
      

  3.   

    上面的不行
    方法一:
    //根据现有的节点值,让该节点处于选中状态
    public string GetIndex(Microsoft.Web.UI.WebControls.TreeNodeCollection tnc, string txt)
    {
    int count = tnc.Count;
    for (int i = 0; i < count; i++)
    {
      if (tnc[i].Text == txt)
       {
    return tnc[i].GetNodeIndex();
        }
    else
       {
           string str = GetIndex(tnc[i].Nodes, txt);
           if (str!=string.Empty)
    return str;
    }
    }
    return string.Empty;
    }
    缺点就是要展开你要选择节点。
    方法2:
    private void FindInTree2(string strNodeData)
    {  
    foreach (TreeNode tn in TreeView1.Nodes)            
    {
    if (tn.Text != strNodeData)
    {   
    FindInTree2(tn,strNodeData);

    else
    {   
    ExpandTree2(tn);
    return;
    }
    }
    }
    //根据NodeDate寻找节点
    private void FindInTree2(TreeNode objTreeNode,string strNodeData)
    {   
    foreach (TreeNode tn in objTreeNode.Nodes)            
    {
    if (tn.Text != strNodeData)
    { FindInTree2(tn,strNodeData);

    else
    {   
    ExpandTree2(tn);
    return;
    }
    }
    }
    //根据NodeDate展开节点
    private void ExpandTree2(TreeNode objTreeNode)
    {   
    string strIndex = "0"; objTreeNode.Expanded = true; strIndex = objTreeNode.GetNodeIndex(); while (objTreeNode.Parent is TreeNode)
    {
    objTreeNode = ((TreeNode)objTreeNode.Parent);
    objTreeNode.Expanded = true;                
    } TreeView1.SelectedNodeIndex = strIndex;
    }