我正在制作一个音乐播放器,我需要在其中创建一个搜索。现在我已经在 WinForms 中以这种方式使用 TrackBar 完成了它:
- 使用计时器使媒体的位置与 TrackBar 的值保持同步。
- 使用
Scroll
事件在用户拖动 TrackBar 的拇指时更改媒体位置。
但在 WPF 中,没有 Scroll
事件,即使在代码中更改了值,也会触发 ValueChanged
事件。因此,当我使用 DispatcherTimer
更新 slider 位置时,即使这样 ValueChanged
事件也会被触发,进而改变媒体位置。因此,媒体无法正常播放。
所以我需要一个仅在用户更改 Slider
的值时触发的事件。
我已经遇到了this question但它没有正确的答案。
任何帮助将不胜感激。感谢期待。
最佳答案
在您的 ValueChanged
事件处理程序中,检查一些属性以查看用户交互。
IsFocused, IsMouseDirectlyOver, IsMouseOver, IsKeyboardFocused, IsKeyboardFocusWithin
关于c# - 仅当用户更改值时才会发生的 WPF Slider 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34480094/