我有一个ListView
,其DataTemplate
是两行Grid
,第一行是button
,第二行是treeview
。
树视图ItemsSource
绑定到List<T>
中的ViewModel
集合。
单击按钮时,创建列表,并显示树视图。但是如果有很多ListViewItem
,当我单击第一个ListViewItem的按钮时,树视图显示正确,当我单击第二个ListViewItem中的Button时,第一个ListViewItem中的树视图将更改为与第二个ListViewItem相同的数据之一。
任何解决方案都可以帮到我吗?我希望每个treeview
显示自己的数据。
答案 0 :(得分:0)
问题是您在ItemsSource
中创建了TreeView
ViewModel
的列表,并且已将TreeView
中的ItemTemplate
绑定到此列表List
。因此,所有TreeViews
绑定到同一个集合并更改它将更改所有树的ItemsSource
。
解决方法是在List
内创建此Model
,支持ListViewItem
并将其绑定到TreeView
。在ViewModel
中,您可以更新所选模型包含的List
。通过这种方式,每个项目都有自己的ItemsSource
用于TreeView。