创建一个包含多个数据网格的ListBox

时间:2016-04-17 17:22:23

标签: c# wpf xaml mvvm listbox

我正在尝试使用遵循mvvm设计模式的wpf和实体框架来创建搜索应用程序。当您搜索某人时,我希望ListBox动态保存尽可能多的数据网格,就像搜索显示一样。数据网格将保存诸如名字和姓氏之类的信息,以及个人资料图片。我对wpfs和c#一般都是新手,但我认为datagrid及其所有信息都是它自己的xaml。然后,不知何故,我可以根据需要将xaml添加到列表框中(取决于搜索结果的数量)。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

简单的一个:ListBox.ItemTemplate。 DataGrid XAML进入项目模板。

搜索结果位于搜索结果类的ObservableCollection中。该集合将是您的viewmodel的成员,并且在XAML中,您将该集合绑定到ListBox.ItemsSource。

ListBox将为搜索结果集合中的每个项目实例化一次ItemTemplate。

不要忘记在viewmodel上实现INotifyPropertyChanged,并在用新的集合替换集合时引发PropertyChanged。对集合内容的更改不是您的问题:使用ObservableCollection并且它会自动发出添加和删除通知。 ListBox将在不被询问的情况下订阅这些通知。