给每个结点都加上试试!
TreeNode1.NavigateUrl=#

解决方案 »

  1.   

    我不是说的B/S中
    我说是在C/S中使用TreeView
      

  2.   

    Treeview_mousemove()
    {
    ....
    }
      

  3.   

    晕 ,就写个Treeview_mousemove()
    {
    ....
    }
    怎么知道?
      

  4.   

    C/S中使用TreeView啊
    TreeView 控件规定位置if MOUSE in TreeView 控件规定位置
    MOUSE .STYLE = you need 1
    else 
    MOUSE .STYLE = you need 2  
      

  5.   

    晕了,写的看不懂ASP.net中和C/S中的TreeView不太一样吧/// <summary>
            /// 光标停在节点上时变为手行光标
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void tvMain_MouseMove(object sender, MouseEventArgs e)
            {
                //获取当前光标上的坐标
                TreeNode node = tvMain.GetNodeAt(e.X, e.Y);
                
                //如果节点不为空
                if (node != null)
                {
                    //左上角X坐标
                    int X = node.Bounds.X - 27;
                    //左上角Y坐标
                    int Y = node.Bounds.Y;
                    //右下角X坐标
                    int BottomX = X + node.Bounds.Width + 27;
                    //右下角Y坐标
                    int BottomY = Y + node.Bounds.Height;                //判断是否在这个区域内部
                    if ((e.X >= X && e.Y >= Y) && (e.X <= BottomX && e.Y <= BottomY))
                    {
                        tvMain.Cursor = System.Windows.Forms.Cursors.Hand;
                    }
                    else
                    {
                        tvMain.Cursor = System.Windows.Forms.Cursors.Default;
                    }
                }
                else
                {
                    tvMain.Cursor = System.Windows.Forms.Cursors.Default;
                }
            }
    我自己写出来了。
    其中的为什么有个27,Node前面有个图标也要算进去,node.Bounds获取的值不带前面图标的长度
    。可以根据图标大小改变27这个值。
    我用着是好用的,不知道还有没有其他的方法