TreeView 节点中有相同text的节点,如何确定单击了哪个 TreeView 节点
用index也无法标定单击了哪个 TreeView 节点,
怎么班??

解决方案 »

  1.   

    将id加入text中,比如[001]someText
      

  2.   

    怎么没有完整的答案啊,我也碰到这样的问题呢。
     jiezhi(風依舊) 的办法是可以,但是显示的时候只需要text啊,怎么办?
      

  3.   

    看下面的例子,//treeView1鼠标按下事件
    private void treeView1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
    {
    if(e.Button == MouseButtons.Right)
    {
    TreeNode tn = treeView1.GetNodeAt(e.X,e.Y);
    if(tn != null)
    this.treeView1.SelectedNode = tn;
    }
    }
      

  4.   

    如果你的treeView不使用图片可以将id加入节点的SelectedImageIndex或ImageIndex中(数值型),
    选中节点时返回该节点的SelectedImageIndex或ImageIndex不就是text唯一的id了吗
      

  5.   

    TreeNode有fulpath得属性,可以根据这个判断是哪一个
    每个TreeNode有一个tag,可以子tag里面记东西来判断哪个节点
      

  6.   

    treeview根本就没有鼠标事件啊,怎么出来的? 请问:zhzuo(秋枫),不好意思,刚开始学,什么都不懂,请指教 
      

  7.   

    用Tag,再加上HashTable可以很快定位节点。当然Tag值最好不要重复。
      

  8.   

    用Hashtable,将节点ID添加,单击时取得treeView1.SelectedNode的哈希值,就是ID了
      

  9.   

    大哥大姐,请问目录树生成以后,我想在右边跳转页面,就象csdn.net似的,怎么控制?
    谢谢各位大侠。根据我点击的接点不同,显示不同的页面,而左边的目录树仍然显示。帮帮忙吧,
    还有就是怎么在这个上提问题,我还不会,谢谢,在线等,可以发分。
      

  10.   

    private void treeView1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
    {
        if(e.Button == MouseButtons.Right)
        {
    TreeNode tn = treeView1.GetNodeAt(e.X,e.Y);
    if(tn != null)
    this.treeView1.SelectedNode = tn;
        }
    }用getnodeat()是正解.
      

  11.   

    将TreeNode的ID值放到tag属性中,即tn.tag=datatable.rows[0]["ID"];
    单击时再根据TreeNode的Tag值,即结点TEXT的ID值,来判断。
      

  12.   

    每个节点都会有data和text属性的
    会有存储数据的地方的,
    至少在delphi和asp.net里的树都有