我将一个对象(命名客户机)和ObservableCollection(命名联系人)属性绑定到我的Silverlight视图。我的客户机类在is和observableCollection上有一些字符串属性,称为contacts。我的viewmodel上有一个名为client的属性(它实现了inotifypropertychanged)包含client对象。如果我将视图中的列表框绑定到对象上的obervablecollection,如下所示:
itemsSource=“{binding path=client.contacts,mode=twowway}”
并将联系人项目添加到集合中,视图将正确更新,并显示新添加的联系人。这一切都很好。
如果我在viewmodel上像这样创建contacts属性
公共可观察收集联系人
{
得到
{
归还客户联系人;
}
并将列表框绑定到
itemsSource=“{binding path=contacts,mode=twowway}”
视图从未更新。
我将联系人项添加到客户端,如下所示:
client.contacts.add(新联系人)
为什么联系人列表框不更新?我怎样才能改变它呢?客户端.联系人绑定可以使用吗?添加新联系人后在代码中插入一个分隔符,表示新联系人对象正在添加到集合中,但视图没有看到添加。