【发布时间】:2014-08-31 16:02:33
【问题描述】:
我有一个包含Slider sli 的 WPF 应用程序,它通常会在ValueChanged-事件上触发一个方法。此外,在某些情况下,sli 的最大值和最小值会发生变化。现在我已经意识到,在这些情况下,sli 的Value 可能会在它超出新的最大/最小值范围的情况下发生变化。这也会触发ValueChanged。此外,我有时必须以编程方式调整Value,这当然也会触发`ValueChanged。
现在,我只希望在用户更改 Value 时执行该方法,而不是在它被强制更改时执行,因为它超出范围或当我在代码中更改它时。
我的尝试是使用DragCompleted-事件,但我确实希望在用户拖动滑块时连续触发事件。另一种尝试是在 max/min-change 或 in-code-update 之前简单地从 ValueChanged 的事件处理程序中删除该方法,然后再添加该方法。在这里,我不确定这是否真的是最干净,尤其是性能方面最快的解决方案。
因此,我想问是否有人可能有更好的解决方案,也许是实际上众所周知的东西,但是我找不到关于这个主题的任何东西。
【问题讨论】: