2011-04-04 204 views
11

我想要做的是有一个鼠标悬停发生时的工具提示显示。工具提示在鼠标移出之前不会关闭。鼠标悬停和鼠标移动的WPF工具提示

只有一个鼠标将允许工具提示关闭。

客户有一个要求,他们希望工具提示保持无限期,直到发生鼠标移出。

其他:有没有办法只关闭鼠标移出的工具提示,而不是鼠标移动?

鼠标移过的区域是一个矩形,只有当我移出矩形时,如果工具尖端关闭。

谢谢。

回答

20

你的问题并不完全清楚,我不知道你在找什么,但会影响工具提示持续跟踪的东西:

ToolTipService.InitialShowDelay - 悬停之间的时间长度,单位为毫秒控制以及何时出现工具提示。 0 =即时。

ToolTipService.ShowDuration - 当鼠标悬停时,工具提示将停留的时间长度(以毫秒为单位)。将它设置得非常高,将实际上是一个“永不关闭”的选项,但并不总是一个真正的选择。

ToolTipService.BetweenShowDelay - 一旦弹出工具提示,这是再次观察到InitialShowDelay之前必须经过的时间量。

例子:

<TextBox ToolTipService.InitialShowDelay="5000" 
ToolTipService.ShowDuration="2000" 
ToolTipService.BetweenShowDelay="10000" 
ToolTip="This is a tool tip." /> 

这样,当您通过在文本框,一个提示会在五秒后显示出来。它会停留两秒钟。直到你没有看过10秒的工具提示,在悬停和弹出之间不会有任何延迟。

+0

我想要做的是一旦鼠标移到工具提示上就不会关闭,直到出现鼠标为止。只有一个鼠标将允许工具提示关闭。这正是我想要做的。我希望更清楚。客户有一个要求,他们希望ToolTip保持无限期,直到发生鼠标移动。谢谢! – nitefrog 2011-04-04 03:54:12

+0

是的,那么我认为你能做的最好的就是让ShowDuration真的很大。如果你做了360,000,000次,那将会持续100个小时,这对于鼠标光标呆在一个地方来说很长。 – 2011-04-04 05:05:45

+0

谢谢。有没有办法只在鼠标关闭而不是鼠标移动?该区域是一个矩形,只有当我移出矩形时,如果工具尖端关闭。再次感谢。 – nitefrog 2011-04-04 05:24:08

2

如果你只是设置ToolTip =“消息”。只有当鼠标位于控件上时,才会显示您的消息。