我定义了两个 slider ,每个 slider 的值都在 0 到 200 之间。一个 slider 用于最小值,第二个 slider 用于最大值。
现在的要求是最小值 < 最大值。我可以在两个 slider 的监听器方法中确保此要求,但我想防止用户甚至可以在 slider 上选择不满足此要求的值。我该怎么做?
最佳答案
如果您使用的是表示模式,例如 MVVM……
将每个 slider 绑定(bind)到演示模型/ View 模型中的一个属性。确保在绑定(bind)上设置 Mode=TwoWay
。
现在,在 View 模型中,您可以让您的 setter 完成工作。他们可以在极限处停止(设置另一个属性的地方),也可以插入补充属性。例如,如果 max 设置为 100,并且用户将 min 滑动到 150,则您也可以将 max 设置为 150。只要您引发属性更改通知,用户就会看到另一个 slider 也移动。
关于c# - 两个相互依赖的 slider ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4608545/