WPF滑块控制鼠标滚轮
我有一个WPF滑块,Mousewheel事件处理程序已经连接好,工作正常,但是,滑块上鼠标滚轮生效的区域非常窄,我需要将鼠标放在滑块滑轨上,大约5像素 如何增加鼠标滚轮激活的影响范围 更新: 顺便说一句,我需要在代码中这样做,我没有访问Xaml的权限,因为我正在向第三方应用程序添加一些东西 更新2: 以下是我创建滑块的代码:WPF滑块控制鼠标滚轮,wpf,Wpf,我有一个WPF滑块,Mousewheel事件处理程序已经连接好,工作正常,但是,滑块上鼠标滚轮生效的区域非常窄,我需要将鼠标放在滑块滑轨上,大约5像素 如何增加鼠标滚轮激活的影响范围 更新: 顺便说一句,我需要在代码中这样做,我没有访问Xaml的权限,因为我正在向第三方应用程序添加一些东西 更新2: 以下是我创建滑块的代码: var riskRewardSlider = new Slider() { Minimum = 1,
var riskRewardSlider = new Slider()
{
Minimum = 1,
Maximum = 5,
SmallChange = 0.5,
TickFrequency = 0.5,
DataContext = scopeContext,
IsSnapToTickEnabled = true,
Value = 2,
Background = Brushes.DodgerBlue,
Height = 30,
IsSelectionRangeEnabled = true
};
滑块值随双精度变化。它的敏感度为0.1或更低。如果我理解正确,您不希望像0,1那样增加。所以,
mySlider.IsSnapToTickEnabled = true;
mySlider.TickFrequency = 1;
您可以将其添加到启动方法中。(也可以将其作为属性添加到xaml中,但需要作为代码)。这将使滑块增加1,而不是0,1
注意:0,1只是一个双重示例,默认情况下滑块的敏感度低于0,1
注2:很抱歉我的英语不好。请为滑块使用另一个控件模板。我是WPF新手-我是一名web开发人员。你能详细说明一下吗?也许这是一个很好的教程。你如何创建滑块?控件的背景似乎设置为空。将背景设置为透明。否将背景设置为透明会使轨迹消失。“背景”属性似乎只影响轨迹。。。。。我真的只需要把轨道加厚谢谢你的回复。欢迎来到StackOverflow。我的问题实际上是关于悬停区域-鼠标需要在轨迹上的一个非常精确的位置,否则鼠标滚轮不工作。你不能在整个窗口上添加此鼠标滚轮事件吗?所以你不再需要那个区域了。如果你不想要整个窗口,你可以用你的高度创建一个(stackpanel等),然后在你的stackpanel上添加该事件?这可能会起作用,但有两个滑块彼此相邻,都在同一个面板上,我需要以某种方式将它们拆分。我能把它们放在一个盒子里吗?如果你能添加一个盒子,(有足够的空间)你可以增加滑块的大小,或者为它添加一个边距。但是,如果您想将它们添加到框中,请添加Borderthickness和Borderbrush。滚轮将触发其事件,即使鼠标光标位于边框上。