如果只是测试鼠标是否在TreeView控件中的话,那很简单.
如果要测试的是鼠标在TreeView控件的哪个结点中的话,有点烦.不过也不难.我帮你找找.

解决方案 »

  1.   

    此贴标题说的问题是鼠标是否在TreeView控件中,而不是在哪个节点中。鼠标进入某个控件会引发Enter事件,离开该控件引发Leave事件
      

  2.   

    看看这个怎么样.
    private TreeNode FindTreeNode(int x,int y)
    {
    //先把当前的鼠标位置转换成控件内的坐标
    Point pt=treeView1.PointToClient(new Point(x,y));
    //获取第一个可见的节点,如果窗口没有滚动,这将是第一个根节点.
    //???如果窗口滚动的话,我也不知道应该怎么办了.还望高手指点.
    TreeNode node=treeView1.TopNode;
    while(node!=null)
    {
    //检查鼠标坐标是否包含在这个节点内部
    if(node.Bounds.Contains(pt))
    {
    return node;
    }
    //获取下一个可见的节点
    node=node.NextVisibleNode;
    }
    return null;
    }如果是滚动后的树的话,可能要在其它拖动事件里想办法了.关注!