【问题标题】:how to duplicate ListViews如何复制 ListView
【发布时间】:2013-12-22 08:14:12
【问题描述】:

我想知道是否有可能有 2 个类似的 listView 结构,使用属性 Binding。所以,我有一个 ListView 包含不同大小的不同项目。除此之外,我想用其他项目创建另一个 listView,但每个项目的大小将与第一个 ListView 中相应项目的大小相同。

例子:

第一个 ListView 的 Item 1 的大小 = 第二个 ListView 的 Item 1 的大小

第一个ListView的Item 2的大小=第二个ListView的Item 2的大小

...

...

第一个 ListView 的 Item x 的大小 = 第二个 ListView 的 Item x 的大小

【问题讨论】:

    标签: c# wpf listview data-binding mvvm


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 2013-09-16
      • 1970-01-01
      • 2011-04-22
      • 2013-04-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多