Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Customized ToolTip [for WinForms]

0.00/5 (No votes)
25 Mar 2013 1  
Customized ToolTip [for WinForms]

Introduction   

This is a fully customizable ToolTip that inherits from the standard one. This work was my cornerstone in this project: http://www.codeproject.com/Articles/464085/WinForms-RichTextBox-ToolTip-like-Visual-Studios. Therefore, I didn't want to be a 'tightwad' and decided to share the whole project with you, guys ;) 

The new features, the ability of customizing the ToolTip's:

  • Title color.
  • Title font.
  • Description color. 
  • Description font. 
  • Background image. 

How to use the component

  1. Right click on the Visual Studio ToolBox.
  2. On the ".NET Framework Components" tab click on "Browse..." button.
  3. Browse to the DLL file and select it.
  4. On the ToolBox a new component will be added with "eToolTip" name.

Now add your new component to any form and for the properties they are accessible from both: the DesignerEditor and CodeEditor as well.

 How does it work?

The component relies on the 'OnPopup' and 'OnDrawn' events to customize the ToolTip. How?

  1. OnPopup event: 
  2. Measuring the appropriate size that will fit with the both of title and description.

  3. OnDrawn event:
    • First thing here that the event will start with is resizing the specified BackgroundImage according to the ToolTip size and then drawing the background image.
    • From the measured size the event will determine the appropriate way of drawing the text according to the ToolTip measured size. 
    • When drawing a text on the ToolTip using the 'e.Graphics.DrawString()' method, this method needs a specific brush and font for the string that will be drawn, so the event is set to use the specified brush and font from the specified properties for each of Title and Description of the component.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here