【问题标题】:Binding to a List绑定到列表
【发布时间】:2012-01-08 21:56:03
【问题描述】:

可以绑定到一个列表,这样当任何列表元素发生变化时,目标都会得到通知?我想使用多值转换器将依赖属性添加到列表中,每次任何元素更改或添加新元素时,我都会在其中对列表进行操作。

【问题讨论】:

    标签: wpf data-binding dependency-properties observablecollection inotifypropertychanged


    【解决方案1】:

    有一个lists可以实现的接口INotifyCollectionChanged,用来通知它包含的元素发生了变化。框架类 ObservableCollection 实现了这个接口。

    如果您需要处理集合中任何元素的更改,您可以在此处找到实现:

    ObservableCollection that also monitors changes on the elements in collection

    【讨论】:

    • 但只有在列表本身发生变化时才会通知“列表元素发生变化”。
    • 没错,如果你需要这个功能,你必须自己写。
    • ObservableCollection 仅在 collection 更改时通知--添加、删除等,而不是在集合中对象的属性更改时通知
    • @ColinE 我该如何编写这样的功能?
    • 是的,我知道。我已经编写了一个扩展 ObservableCollection 的类,以在过去添加此功能。它在 Visiblox 图表产品中:visiblox.com/static/releases/1.8.1/Docs/html/… 正如我所说,您必须自己编写!
    猜你喜欢
    • 2011-02-12
    • 2011-03-08
    • 1970-01-01
    • 2012-02-24
    • 1970-01-01
    • 1970-01-01
    • 2018-04-20
    • 1970-01-01
    • 2014-08-13
    相关资源
    最近更新 更多