我有一个 ListBox ,其中ItemTemplate包含 Slider 控件 . 当我们聚焦Slider并按下键 updown 时,它会像按 leftright 时那样更改值 . 我想覆盖这种行为 - 我想取消值更改,让事件冒泡到父ListBox,这将使它选择上一个/下一个项目 .

我打算撤消Slider的KeyDown处理程序中的值更改,让事件冒出来(通过确保 Handled = false ),希望源自子Slider的未处理的KeyDown事件将使ListBox像往常一样运行并更改SelectedItem . 我'm not sure if that'是ListBox的行为方式,但我在那之前遇到了问题:

  • KeyDown事件似乎没有从滑块冒出来

  • 甚至没有将KeyDown处理程序附加到Slider本身也可以工作 - 除非我按下其他键;按下值改变键似乎根本不会触发KeyDown事件,只会触发ValueChanged事件

我应该怎么解决这个问题?谢谢!