我正在尝试创建这个:
Tag1 具有对象的有序列表:O1、O3、O2。 Tag2 具有对象的有序列表:O1、O4。
每次单击标签时,我都想查看对象列表。所以点击 Tag1 将显示在列表框中:
- O1
- O3
- 氧气
但我想保持自动更新,这样每次我编辑或添加/删除对象时它都会自动更新(我想我需要实现类似接口(interface)INotifyCollectionChanged
和 INotifyPropertyChanged
?)。
我可以使用数据库并拥有表 Tag、Object 和 TagObject,最后一个具有 TagID 和 ObjectID。但我也想避免使用数据库,因为它是一个桌面应用程序。
我也可以使用像 ObservableCollections
这样的对象,但是我有重复对象的问题。我可以使用对对象的引用,但它会变得困惑。
有人对如何做到这一点有任何建议吗?
谢谢。
最佳答案
一种选择是创建一个包含数据集(System.Data 命名空间)的对象。在数据集中,它将有 3 个表,这些表将使用定义的外键链接,就像在数据库中一样。如果需要,这些可以在以后存储为 XML。
然后您的对象必须公开一个数据 View ,该数据 View 也可以设置为数据上下文并进行绑定(bind)。
在代码中编辑数据集然后更新屏幕,编辑屏幕将更新数据集。
关于c# - WPF 数据绑定(bind) : database or objects?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/476020/