如何使用MVVM更改datagrid或listview中的内容

时间:2011-03-01 10:52:35

标签: .net wpf mvvm

我有一个MainWindowViewModel(DataContext),它公开了不同的ObservableCollections<> (使用INotifyProperty来查看poco对象的视图....)。从组合框中选择一个值后,我想单击一个加载按钮,然后在datagrid或listview中显示所需的数据。问题是,在xaml代码中,我只能为一个集合定义itemssource和列特定的定义。那么如何更改以符合MVVM的方式显示的数据。有没有最好的做法?

1 个答案:

答案 0 :(得分:1)

在ViewModel中创建一个公开IEnumerable的属性。将DataGrids ItemsSource绑定到该属性。然后,您可以将属性从ViewModel内部设置为任何集合,然后数据将发生变化 请注意,您应指定双向绑定,并且您的媒体资源必须支持某些更改通知(支持INotifyPropertyChangedDependencyProperty)。