Index: class/Managed.Windows.Forms/System.Windows.Forms/Theme.cs
===================================================================
--- class/Managed.Windows.Forms/System.Windows.Forms/Theme.cs	(revision 103545)
+++ class/Managed.Windows.Forms/System.Windows.Forms/Theme.cs	(working copy)
@@ -939,6 +939,7 @@
 		#region ToolTip
 		public abstract void DrawToolTip(Graphics dc, Rectangle clip_rectangle, ToolTip.ToolTipWindow control);
 		public abstract Size ToolTipSize(ToolTip.ToolTipWindow tt, string text);
+		public abstract bool ToolTipTransparentBackground { get; }
 		#endregion	// ToolTip
 		
 		#region BalloonWindow
Index: class/Managed.Windows.Forms/System.Windows.Forms/ThemeWin32Classic.cs
===================================================================
--- class/Managed.Windows.Forms/System.Windows.Forms/ThemeWin32Classic.cs	(revision 103545)
+++ class/Managed.Windows.Forms/System.Windows.Forms/ThemeWin32Classic.cs	(working copy)
@@ -5056,6 +5056,12 @@
 			
 			return size;
 		}
+		
+		public override bool ToolTipTransparentBackground {
+			get {
+				return false;
+			}
+ 		}
 		#endregion	// ToolTip
 
 		#region BalloonWindow
Index: class/Managed.Windows.Forms/System.Windows.Forms/ToolTip.cs
===================================================================
--- class/Managed.Windows.Forms/System.Windows.Forms/ToolTip.cs	(revision 103545)
+++ class/Managed.Windows.Forms/System.Windows.Forms/ToolTip.cs	(working copy)
@@ -88,7 +88,12 @@
 				VisibleChanged += new EventHandler(ToolTipWindow_VisibleChanged);
 
 				SetStyle (ControlStyles.UserPaint | ControlStyles.AllPaintingInWmPaint, true);
-				SetStyle (ControlStyles.ResizeRedraw | ControlStyles.Opaque, true);
+				SetStyle (ControlStyles.ResizeRedraw, true);
+				if (ThemeEngine.Current.ToolTipTransparentBackground) {
+					SetStyle (ControlStyles.SupportsTransparentBackColor, true);
+					BackColor = Color.Transparent;
+				} else
+					SetStyle (ControlStyles.Opaque, true);
 			}
 
 			#endregion	// ToolTipWindow Class Constructor
