我已經準備好了很多關於將Observable Collection綁定到ComboBox的文章,但我仍然無法弄清楚爲什麼我的集合沒有綁定到放置在DataGrid中的ComboBox。將ObservableCollection綁定到DataGrid中的ComboBox不起作用
我的模型
class DDV
{
public DDV(int ID, string Naziv)
{
_ID = ID;
_Naziv = Naziv;
}
private int _ID;
public int ID
{
get { return _ID; }
set { _ID = value; }
}
private string _Naziv;
public string Naziv
{
get { return _Naziv; }
set { _Naziv = value; }
}
我的視圖模型:
class ArtikliStoritveViewModel : INotifyPropertyChanged
{
public ArtikliStoritveViewModel()
{
DDVData.Add(new DDV(1, "Ceka"));
DDVData.Add(new DDV(2, "Zeka"));
}
private ObservableCollection<DDV> _DDVData = new ObservableCollection<DDV>();
public ObservableCollection<DDV> DDVData
{
get
{
return this._DDVData;
}
set
{
_DDVData = value;
}
}
的DataContext:
<Window.DataContext>
<local:ArtikliStoritveViewModel/>
</Window.DataContext>
綁定:
<DataGridTemplateColumn Header="Test">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox
x:Name="cmbDDV"
ItemsSource="{Binding DDVData}"
DisplayMemberPath="Naziv"
/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
我在查看模型觀察到的集合:
private ObservableCollection<DDV> _DDVData = new ObservableCollection<DDV>();
public ObservableCollection<DDV> DDVData
{
get
{
return this._DDVData;
}
set
{
_DDVData = value;
}
}
我的DataGrid綁定到tihs視圖模型:
<DataGrid ItemsSource="{Binding Path=ArtikliStoritveData}
在視圖模型構造我綁定到集合:
DDV _ddv;
public ArtikliStoritveViewModel()
{
_ddv = new DDV { ID = 1, Naziv = "Ceka" };
DDVData.Add(_ddv);
}
所以一切都必須留在這個視圖模型中。
我還需要做些什麼來完成這項工作。目前沒有任何約束力。
問候, 伊戈爾
我在模型視圖一些其他觀察到的集合,所以我不能在DDV模型將其更改爲DDVDData: 公衆的ObservableCollection ArtikliStoritveData { 得到{_artikliStoritveData; } set { _artikliStoritveData = value; OnPropertyChanged(「ArtikliStoritveData」); } }
Igor
請將您的代碼添加到*問題末尾*和*不*在*註釋*中,難以查看。另外,我並不完全明白你的意思。我添加了 – Sheridan
。 「輸出」窗口中沒有任何錯誤或警告。 – Igor