TreeNode鼠标悬停工具提示未显示

时间:2009-11-18 16:57:05

标签: c# winforms treeview mousehover

当鼠标悬停在树视图节点上时,我试图显示工具提示。但工具提示没有显示出来。

这是我的代码:

private void treeView1_MouseHover(object sender, EventArgs e)
{
    toolTip1.RemoveAll();

    TreeNode selNode = (TreeNode)treeView1.GetNodeAt(Cursor.Position);

    if (selNode != null)
    {
        if (selNode.Tag != null)
        {
            Product selProduct = selNode.Tag as Product;

            if (selProduct != null)
            {
                toolTip1.SetToolTip(treeView1, selProduct.ProductName + "\n" + selProduct.ProductCategory.ToString());
            }
        }
    }
}

我应该检查什么?

2 个答案:

答案 0 :(得分:27)

更简单的方法是:

  1. 在创建TreeNode时设置ToolTipText。
  2. 将TreeView控件的ShowNodeToolTips属性设置为True。
  3. 你已经完成了。

答案 1 :(得分:4)

看起来问题出在

TreeNode selNode = (TreeNode)treeView1.GetNodeAt(Cursor.Position);

行,将其更改为

TreeNode selNode = (TreeNode)treeView1.GetNodeAt(treeView1.PointToClient(Cursor.Position));

它应该工作;我还建议您查看以下文章:How to add a ToolTip to a TreeNode in Visual C#以获取有关如何将工具提示添加到树视图的详细信息

希望这有帮助,尊重