WPF 中的 Slider 控件如何捕捉特定值?
我想创建一个滑块,其值从 0 到 100,我可以像任何其他滑块一样滑动...但在位置 30、42 和 55(例如)我想捕捉到这些值,以便用户轻松使用要停止滑块
编辑:我的解决方案是有 2 个滑块,第一个滑块不可见,值 0 到 200,另一个是可见的,值 0 到 100 可见的不能滑动,只能滑动不可见的。像这样我可以制造一个间隙,例如:当我在隐形滑块上的 50 到 75 之间时,它等于可见滑块上的 50...
I want to create a slider, with values from 0 to 100 that I can slide like any other slider... but at position 30, 42 and 55 (for example) I want to snap to these values, to make easy to the user to stop the slider at them
edit: my solution was to have 2 slider, the first one is invisible, value 0 to 200, and the other one is the visible on, value 0 to 100
The visible one cannot be slide, only the the invisible. Like this i can make a gap, ex: when I'm between 50 and 75 on the invisible slider, it's equals to 50 on the visible one...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您必须重写 OnValueChanged。请参阅这篇文章 DiscreteSlider -使用简单的控件子类添加功能,然后是本文捕捉的 Silverlight 滑块控件 详细解释。
您可以检查滑块位于值之间的位置并捕捉到最近的值,而不是使用 SmallChange。
You have to override OnValueChanged. See this article DiscreteSlider - Adding Functionality with a Simple Control Subclass and then this artice Silverlight slider control that snaps for a detailed explanation.
Instead of using SmallChange, you would check where between your values the slider sits and snap to the nearest.