wpf tooltip问题

zhantianyou 2011-06-10 10:19:38
大侠们:
我有个slider,当我鼠标在上边移动时,会更新tooltip的值 ,但现在问题是,tooltip的位置为一开始的位置,并不随鼠标的移动而更新tooltip的位置,我改怎么做?

效果要如视频播放器的时间轴一样

...全文
282 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhantianyou 2011-06-15
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 duanzilin 的回复:]

实在不行就用Popup模拟Toolkit效果,Popup的显示位置和时机都可以自己控制,应该能满足你的需求
[/Quote]

wpf 如何让popup显示出来,能不能mousemove时就先让它关闭,再显示啊?

注意:mousemove时,鼠标是一直在时间轴上的,并没有出去,
沝林 2011-06-10
  • 打赏
  • 举报
回复
你设置的应该是slider的Tooltip,尝试自定义slider模板,然后给滑块部分定义Tooltip
zhantianyou 2011-06-10
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 jimh 的回复:]

没什么好说的,自己写代码实现啦,捕捉slider的移动事件,如果无法捕捉则直接捕捉鼠标拖动事件,然后自己修改tooltip位置,如果无法修改原来tooltip位置,则可以考虑自己做一个tooltip。
[/Quote]

可能了哦,搞了一个早上,也没弄成功,看来真的按你所说的做了。
jimh 2011-06-10
  • 打赏
  • 举报
回复
没什么好说的,自己写代码实现啦,捕捉slider的移动事件,如果无法捕捉则直接捕捉鼠标拖动事件,然后自己修改tooltip位置,如果无法修改原来tooltip位置,则可以考虑自己做一个tooltip。
灵雨飘零 2011-06-10
  • 打赏
  • 举报
回复
帮顶!
matrixcl 2011-06-10
  • 打赏
  • 举报
回复
没明白你的意思。

tooltip本来就是跟着鼠标走的啊?
324374 2011-06-10
  • 打赏
  • 举报
回复
<Slider Name="slider" ToolTip="aaaaa" MouseMove="slider_MouseMove" ToolTipService.Placement="Top"></Slider>


        private void slider_MouseMove(object sender, MouseEventArgs e)
{
var pos = Mouse.GetPosition(slider);
ToolTipService.SetHorizontalOffset(slider, pos.X);
ToolTipService.SetVerticalOffset(slider, pos.Y);
}
沝林 2011-06-10
  • 打赏
  • 举报
回复
实在不行就用Popup模拟Toolkit效果,Popup的显示位置和时机都可以自己控制,应该能满足你的需求
zhantianyou 2011-06-10
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 duanzilin 的回复:]

你设置的应该是slider的Tooltip,尝试自定义slider模板,然后给滑块部分定义Tooltip
[/Quote]

大侠,那要怎么做?我重新定议了模版,但问题是我鼠标一直在slider上滑动,他的位置就是不跟着鼠标走,如果我离开slider,再回slider那就可以,但是达不到视频播放器那种效果!

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧