如何移动工具提示?

时间:2009-03-16 11:28:25

标签: c# .net winforms datagridview tooltip

我正在使用CellToolTipTextNeeded的{​​{1}}事件,工具提示正在鼠标下方显示。我可以通过反射获取DataGridView对象,但由于我不是那个调用ToolTip的人,所以我无法控制它的位置。如何移动工具提示?

4 个答案:

答案 0 :(得分:1)

自定义怎么样?

答案 1 :(得分:1)

我认为简短的回答是:你不能,不管怎样。我可能会考虑建立一个像'未知(雅虎)'建议的自定义。

答案 2 :(得分:1)

如果您希望使用2.0框架控制其定位方式和位置,则必须使用“显示”和“隐藏”方法自行控制工具提示,除非您想进入Window的API调用。

不幸的是,看起来工具提示位置在其创建时非常早期设置。工具提示只有3个要处理的事件,在这种情况下我们对Dispose不是很感兴趣。

在Popup事件之后触发Draw事件,似乎已将位置设置为PopupEventArgs中的Bounds属性为readonly。

以下是创建自定义控件的许多文章之一(在本文发布时): http://andrusdevelopment.blogspot.com/2007/10/implementing-custom-tooltip-in-c.html

使用工具提示的Show和Hide方法的MSDN文档实际上相当不错: http://msdn.microsoft.com/en-us/library/44atyhsa(VS.80,printer).aspx

很抱歉,但这看起来并不像这个快速简单的答案。希望有人会证明我错了两个都是清醒的。

斯科特

答案 3 :(得分:1)