在我的爱好项目中,我有以下情况:
我正在使用 C#、WPF、MVVM(以及 MVVM:尝试)
我加载包含信息的二进制文件并将其存储在(无符号)字节列表中。我有一个引用列表中特定位置的类层次结构。我的应用程序有时会更改类层次结构(和引用字节),但有时也会直接更改字节(例如复制范围)。
我有窗口,其中我将列表视图绑定到映射结构。
在更改类中的属性时,我使用 INotifyPropertyChanged,因为它应该在 MVVM 中使用。但是,直接更改字节时我遇到了问题。目前我正在使用手动更新方法,但它变得非常混乱。
有什么解决方案吗?
字节列表也可以是 45 MB 的数据。如果我在列表上设置通知,是否意味着对于每个字节更改我都会收到所有观察者的通知?这意味着什么时候我会一个一个地复制例如 10KB 的字节,并且我会在 100 万次更新中拥有 100 个观察者函数(处理属性更改)?那将是一个性能杀手。
或者我也可以这样说:现在更新类 X(即类内的所有属性更改)。我不能使用 set 属性函数,因为在复制字节时值已经被更改。