gpt4 book ai didi

wpf - INotifyPropertyChanged 或 INotifyCollectionChanged 与 DataTable 一起使用?

转载 作者:行者123 更新时间:2023-12-02 07:28:33 26 4
gpt4 key购买 nike

嗨,我对数据表有一些麻烦。所以我需要的是每当我更改绑定(bind)的 DataTable 的 DataGrid 中的任何单元格时进行检测。

怎么做呢?使用 INotifyPropertyChanged 还是使用 INotifyCollectionChanged

注意:我正在尝试使用 INotifyPropertyChanged 但它只检测我在 DataTable 中设置某些值的时间,而不会在我更改 DataGrid 中任何单元格的任何值时检测,我已经尝试过 OneWayTwoWay 但没有任何反应。

提前致谢!

最佳答案

数据网格将绑定(bind)到对象列表。如果您希望网格在单个对象属性更改时更新,则每个包含的对象必须实现 INotifyPropertyChanged界面。

INotifyCollectionChanged是集合应该实现的接口(interface),用于添加和删除事件的通知。

请参阅 this page 上的“如何实现集合”部分.

<小时/>以下是解决您的问题的方法:

  • 创建一个新类,公开每个DataRow中当前保存的属性。 。在此类上实现 INotifyPropertyChanged .
  • 而不是 DataTable ,使用ObservableCollection<T>或者你的新类(class)。

ObservableCollection已经实现 INotifyCollectionChanged ,这样您就可以省去自己实现的精力。

关于wpf - INotifyPropertyChanged 或 INotifyCollectionChanged 与 DataTable 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5798936/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com