【问题标题】:Binding Listbox SelectedItems to a Slider in WPF将 Listbox SelectedItems 绑定到 WPF 中的滑块
【发布时间】:2024-01-08 08:22:01
【问题描述】:

我对 WPF 比较陌生,但您能否提供一个示例,说明如何将滑块值绑定到列表框中的选定项目。理想情况下,当用户移动滑块时,屏幕上的项目会随着滑块值的变化而动态变化。通过阅读,我了解到您需要使用附加属性或值转换器,因为我们绑定了不同类型的值。如果是这样,您能否提供一个最有效方法的简单示例。

谢谢。

【问题讨论】:

  • 什么?没看懂,你想把滑块值绑定什么?
  • 随着滑块控件的移动,列表框项目会更新。我假设列表框项目将以某种方式被数据绑定到滑块值。我该怎么做?

标签: c# wpf data-binding slider converter


【解决方案1】:

不确定这是否真的是问题,但如果您打算通过 ListBox 项移动所选项目,您可以直接将 ListBox 的 SelectedIndex 绑定到 Slider Value

<StackPanel>
    <ListBox SelectedIndex="{Binding Value, ElementName=slider}">
        <ListBoxItem>1</ListBoxItem>
        <ListBoxItem>2</ListBoxItem>
        ...
        <ListBoxItem>10</ListBoxItem>
    </ListBox>
    <Slider Name="slider" Minimum="0" Maximum="9"/>
</StackPanel>

当然,您必须将 Slider 的 Maximum 值调整为实际项目数减一。

【讨论】: