How do I fix tooltip help in Windows Forms apps under Windows 7/Vista?
I've noticed that Windows Forms applications running under Windows 7 Professional 64-bit display help tooltips incorrectly.
Specifically, this is when you use a HelpProvider and SetHelpString on a control. When using the "?" caption bar help button and clicking on a control that has an assigned HelpString, the tooltip looks like it is out of Windows 3.1 (no transparency shadows) and, more importantly, it displays in a wildly wrong place. The placement does not seem to be random, though, but rather in relation to the mouse click position and window that generated the tooltip. It's like the offset is horribly wrong.
The exact same application running under Windows XP Pro displays these help tooltips just fine. I haven't got a Vista machine to check, but according to this the problem does appear on Vista and seems to be 64-bit related.
Unfortunately, there is hardly anything to be found on this online while Googling. Weeks ago I remember coming across a Microsoft Connect issue ope开发者_运维百科ned about it, with next to no activity of course, but I was unable to find it again to link to.
Does anyone have any insight into the problem or, better yet, a workaround?
Yes, it mangles the position. The X-location is always zero, the Y-location is the X-location of where the tip should appear. Quacks like a P/Invoke mistake, although I don't see it.
The bug is fixed in .NET 4.0
精彩评论