Click here to Skip to main content
Click here to Skip to main content
Go to top

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

 
Generalc# .net 2005 error Pinmemberradnix15-Apr-06 5:36 
GeneralRe: c# .net 2005 error PinmemberMihail Stefanov15-Apr-06 10:38 
GeneralRe: c# .net 2005 error Pinmemberbhupinders14-Mar-07 20:59 

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 | Mobile
Web04 | 2.8.140916.1 | Last Updated 29 Apr 2005
Article Copyright 2005 by Mihail Stefanov
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid