我试图在鼠标悬停在treeview节点上时显示工具提示。但是工具提示没有显示。

这是我的代码:

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());
            }
        }
    }
}

我应该检查什么?

最佳答案

看起来问题出在

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#,详细介绍如何向树状 View 添加工具提示

希望这会有所帮助,问候

关于c# - TreeNode鼠标悬停工具提示未显示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1757453/

10-13 01:28