I have added my own handlers to manage tool tips on a TreeView, setup code:
this.TreeViewSites.NodeMouseHover += TreeViewSites_NodeMouseHover;
this.ToolTip1.Draw += ToolTip1_Draw;
this.ToolTip1.OwnerDraw = true;
The handlers:
private void TreeViewSites_NodeMouseHover(object sender, TreeNodeMouseHoverEventArgs e) {
if (!string.IsNullOrEmpty(e.Node.ToolTipText)) {
ToolTip1.Show(e.Node.ToolTipText, TreeViewSites);
}
}
private void ToolTip1_Draw(object sender, DrawToolTipEventArgs e) {
using (StringFormat sf = new StringFormat()) {
sf.Alignment = StringAlignment.Center;
sf.LineAlignment = StringAlignment.Near;
sf.HotkeyPrefix = System.Drawing.Text.HotkeyPrefix.None;
sf.FormatFlags = StringFormatFlags.NoWrap;
using (Font f = new Font("Courier New", 10)) {
e.Graphics.DrawString(e.ToolTipText, f
, SystemBrushes.ActiveCaptionText
, e.Bounds, sf);
}
}
}
For some reason unknown to me, when the tool tips are displayed I’m seeing a solid black rectangle???