【问题标题】:Best practice for forwarding ItemsSource转发 ItemsSource 的最佳实践
【发布时间】:2010-03-01 16:45:52
【问题描述】:

我有一个 UserControl,其中包含 - 除其他外 - ListViewListView 具有与UserControl 不同的数据上下文(此数据上下文未公开)。如果有人使用我的控制权,我希望他们能够(间接)绑定到ListViewItemsSource 依赖属性。它应该真的感觉就像用户绑定到一个典型的ItemsSource

我不确定最好的方法是什么。查看ItemsControlItemsSource 属性在Reflector 中的工作方式显示了一些似乎比简单转发所必需的逻辑更多的逻辑。

我目前最好的想法是将集合公开为外部控件上的依赖属性,并在更新时更新ListViewItemsSource。但我不确定这个集合应该是什么类型(例如,我是否需要ObservableCollection<T>),或者是否有任何我应该注意的问题。

任何建议或意见将不胜感激。

谢谢。

【问题讨论】:

    标签: wpf binding dependency-properties


    【解决方案1】:

    使用 AddOwner 将您的 UserControl 添加为 ItemsControl.ItemsSourceProperty 的所有者。在新的属性元数据中,提供一个属性更改回调,用于设置 ListView 的 ItemsSource。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-03
      • 2021-01-18
      • 1970-01-01
      • 2011-07-11
      相关资源
      最近更新 更多