Click here to Skip to main content
Click here to Skip to main content

Adding "Balloon" style to ToolTip provider

, 29 Apr 2005
Rate this:
Please Sign up or sign in to vote.
Adding "Balloon" style to ToolTip provider.

Sample Image - Balloon_ToolTip.jpg Red Balloon toolTip

Introduction

There are a lot of articles about "balloon" Tooltip, many lines of codes written with classes which solved the problem. Here I show yet another solution which I think is the most easiest and does not influence existing System.Windows.Forms.ToolTip implementation.

Solution

Probably you may know, reflection is a big advantage in .NET Framework, and I think will use it this time also. System.Windows.Forms.ToolTip class holds handle to the native tooltip window. This handle is non public, so we need to use reflection to get this member. Then we can change the style of the window to "balloon".

Usage

Need to call function SetBalloonStyle from place where the ToolTip window handle is created. In my example, I do it in OnLoad of the Form. If you call the function with handle which is not valid, exception will be thrown.

protected override void OnLoad(EventArgs e)
{
  base.OnLoad (e);  
  // set toolTip native window style to "balloon".
  NativeMethods.SetBalloonStyle ( toolTip1 );
}

Final Notes

Same approach can be used in many places, like the example in System.Windows.Forms.PropertyGrid to make it flat.

History

  • 02/05/05

    Added SetBackColor function, showing how you can change the color of the tooltip window.

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

Share

About the Author

Mihail Stefanov

United States United States
http://www.mommosoft.com

Comments and Discussions

 
QuestionNice work PinprofessionalMike Hankey18-Aug-14 7:18 
Generalgood work Pinmemberamin keshani4-Nov-06 22:45 
Rose | [Rose] Rose | [Rose] thank you for this codeRose | [Rose] Rose | [Rose]

Generalc# .net 2005 error Pinmemberradnix15-Apr-06 6:36 
GeneralRe: c# .net 2005 error PinmemberMihail Stefanov15-Apr-06 11:38 
GeneralRe: c# .net 2005 error Pinmemberbhupinders14-Mar-07 21:59 
QuestionRight to Left Balloon PinmemberAmirSasan30-Oct-05 11:53 
AnswerRe: Right to Left Balloon PinmemberMihail Stefanov2-Nov-05 11:47 
GeneralRe: Right to Left Balloon PinmemberAmirSasan3-Nov-05 11:52 
Generalgood idea PinmemberNeil Yao27-Oct-05 21:25 
GeneralRe: good idea PinmemberMihail Stefanov27-Oct-05 21:30 
GeneralCustom balloon content PinmemberWillemM5-Jul-05 1:01 
GeneralRe: Custom balloon content PinmemberMihail Stefanov5-Jul-05 2:18 
GeneralAny news? Pinmember_JERKER_17-Oct-05 23:42 
GeneralRe: Any news? PinmemberMihail Stefanov27-Oct-05 21:29 
GeneralRe: Custom balloon content PinmemberMihail Stefanov2-Nov-05 11:44 
GeneralAwesome! PinmemberNick Z.5-May-05 8:46 
GeneralRe: Awesome! PinmemberRichNFamous19-May-05 1:02 
GeneralGood job! PinmemberHyperX2-May-05 8:43 
GeneralRe: Good job! PinmemberMihail Stefanov2-May-05 10:02 
GeneralRe: Good job! PinmemberHyperX2-May-05 12:12 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web03 | 2.8.141223.1 | Last Updated 29 Apr 2005
Article Copyright 2005 by Mihail Stefanov
Everything else Copyright © CodeProject, 1999-2014
Layout: fixed | fluid