C# 如何复制列表视图

C# 如何复制列表视图,c#,wpf,listview,data-binding,mvvm,C#,Wpf,Listview,Data Binding,Mvvm,我想知道是否有可能使用properties绑定拥有两个类似的listView结构。因此,我有一个ListView,它包含不同大小的不同项目。除此之外,我还想用其他项目创建另一个listView,但每个项目的大小将与第一个listView中相应项目的大小相同 例如: 第一个ListView项目1的大小=第二个ListView项目1的大小 第一个ListView项目2的大小=第二个ListView项目2的大小 第一个ListView的项目x的大小=第二个ListView的项目x的大小我可能会尝试

我想知道是否有可能使用properties绑定拥有两个类似的listView结构。因此,我有一个ListView,它包含不同大小的不同项目。除此之外,我还想用其他项目创建另一个listView,但每个项目的大小将与第一个listView中相应项目的大小相同

例如:

第一个ListView项目1的大小=第二个ListView项目1的大小

第一个ListView项目2的大小=第二个ListView项目2的大小


第一个ListView的项目x的大小=第二个ListView的项目x的大小

我可能会尝试通过首先覆盖ListView1中的项目模板来实现这一点,以通过多重绑定设置每个项目的高度。这将绑定到ListView1数据上下文、当前项和第二个列表控件。然后,您将为此绑定创建一个多重转换器,该转换器将从多重绑定中接受这些值,确定ListView1项目列表中项目的索引,然后在ListView2中查找该元素以获取其实际高度。说到这里,我会认真思考是否有更好的方法来实现您想要实现的目标,因为这可能不适用于虚拟化,并且可能会对每个元素的第一个列表中的初始索引产生性能影响(尽管我在过去也通过传入字典在O(1)时间内进行映射来解决这个特定问题)