2014-02-23 59 views
0

一类我有一个项目列表的一类,像这样:C#WPF视图模型与列表

public class Model{ 
    List<int> Items { get; set; } 
} 

它采用列表,而不是的ObservableCollection,而不必进行订阅任何事件。 我需要一个列表框单向绑定到这个列表和一个方法一个一个地删除项目。所以我必须编写一个ViewModel类,它的一个属性可以单向绑定到ListBox以显示这些项目,并在使用RemoveItem方法更改列表时更新列表框。我不知道如何将ListBox绑定到这个List。如果我让ViewModel类实现INotifyPropertyChanged,就像我为字符串属性和文本框所做的那样,它不起作用。 请教我如何在不更改Model类的情况下做到这一点。

回答

1

您可以在视图模型中创建一个属性为IObservableCollection并使用模型中的列表进行初始化。 视图模型将实现'removeFromList'方法,它将从IObservableCollection属性(视图模型的属性)中移除一个项目,之后您将从模型列表中移除相同的项目。