MVVM Combobox绑定:从/向更多来源设置和获取数据

问题描述 投票:0回答:1

在我的ViewModel类中,我有Dictionary<int,string>ObservableCollection<int>属性。

private Dictionary<int, string> comboBoxDisplay;
public Dictionary<int, string> ComboBoxDisplay
{
  get { return comboBoxDisplay; }
  set
  {
    comboBoxDisplay = value;
    RaisePropertyChanged("ComboBoxDisplay");
  }
}

public ObservableCollection<int> Data{ get; set; }

在ViewModel类的构造函数中,我将项添加到Dictionary<int, string>并使用“default”项创建ObservableCollection<int>的实例。

ComboBoxDisplay = new Dictionary<int, string>();
ComboBoxDisplay.Add(1, "Never");
ComboBoxDisplay.Add(2, "Rarely");
ComboBoxDisplay.Add(3, "Sometimes");
ComboBoxDisplay.Add(4, "Often");
ComboBoxDisplay.Add(5, "Usually");
ComboBoxDisplay.Add(6, "Allways");


Data = new ObservableCollection<int>{1,1,1,1,1,1};

在XAML中,我有6个ComboBox,如:

<ComboBox Margin="5" ItemsSource="{Binding ComboBoxDisplay}" SelectedIndex="0" SelectedValuePath="Key" DisplayMemberPath="Value">

他们正确显示数据,但我无法弄清楚如何将数据从ComboBox绑定到ObservableCollection<int>。每个qazxswpo应该绑定到ComboBox的特定项目。像ObservableCollection<int>之类的东西

c# wpf mvvm data-binding combobox
1个回答
2
投票

你尝试绑定到SelectedValue了吗?

ComboBox1 {Binding Data[0].Value}, ComboBox2 {Binding Data[1].Value}
© www.soinside.com 2019 - 2024. All rights reserved.