我在WPF中有一个滑块控件的代码如下:
occuranceTimeSlider.TickPlacement = System.Windows.Controls.Primitives.TickPlacement.BottomRight;
occuranceTimeSlider.IsSnapToTickEnabled = true;
occuranceTimeSlider.Ticks = new DoubleCollection()
{
30, 45, 60, 90, 120, 180, 240, 300, 600, 900, 1200, 1800, 3600, 5400, 7200, 9000, 10800, 14400, 18000
};
occuranceTimeSlider.Minimum = occuranceTimeSlider.Ticks.Min();
occuranceTimeSlider.Maximum = occuranceTimeSlider.Ticks.Max();
occuranceTimeSlider.IsSelectionRangeEnabled = false ;
在运行时,滑块显示并正常 。根据两个刻度的大小,在每个刻度之间放置一个可变距离的刻度线。例如,14400和18000之间的刻度距离远大于30到45之间的刻度距离。有没有办法使这个距离保持不变?
由于
答案 0 :(得分:2)
我能想到的唯一方法(没有重新模板化滑块)将是从固定数字转换到幕后的指数级别。只要您将滑块配置为永远不会显示数字,您的用户就永远不会知道。
答案 1 :(得分:0)
或者只设置这样的刻度:
Ticks =“30,45,60,90,120,180,240,300,600,900,1200,1800,3600,5400,7200,9000,10800,14400,18000”