3

有谁知道 Delphi XE(我在这里说的是 VCL)是否有任何适用于数据感知控件的 Generic Collection 类?换句话说,是否有任何通用类,例如可以分配给 TDataSource.DataSet 的 TObjectList<> 或类似的东西?

谢谢。

4

2 回答 2

5

是的,您可以使用ObjectDataSet概念,我认为您最终将不得不基于链接的示例代码作为起点来实现自己。

示例代码展示了如何融合常规非泛型 TObjectList 和 TDataSet 的概念。它使用 RTTI 提供您希望附加到它的任何对象类型的任何列表。它使用 RTTI,不需要使用泛型,而是要求你从 TPersistent 继承。

它的不好的一面是我已经使用它了,我再也不会使用它了。生成的代码是一团糟,很慢,而且模型很糟糕。下一次,我会远离数据感知控件,而只是使用带有虚拟控件的容器,例如 VirtualTreeView 和 ExGridView。

我看不出你为什么不能以上面的代码为基础,并将泛型与数据绑定结合起来,但我可以看到很多你不应该这样做的原因。

于 2011-05-21T16:34:26.770 回答
2

有其他意见:

它们都可以使用具有绑定功能的Generic Collection类,这使得将数据暴露给可视组件非常容易。

于 2011-12-20T16:48:35.620 回答