views:

927

answers:

1

I am trying to show a tooltip when mouse hovers on a treeview node. But the tooltip is not showing up.

This is my code:

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

What should I check for?

+2  A: 

looks like the problem is in the

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

line, change it to

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

and it should work; I would also recomd to look at the following article: How to add a ToolTip to a TreeNode in Visual C# for detalis on how to add tooltips to the treeview

hope this helps, regards

serge_gubenko