Delphi(VCL)泛型和数据绑定?

Dan*_*mas 3 delphi generics binding data-aware

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

谢谢.

War*_* P 5

是的,您可以使用ObjectDataSet概念,我认为您最终必须基于链接的示例代码作为起始位置来实现自己.

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

它的不好的一面是,我已经使用过它,我再也不会使用它了.结果代码很乱,很慢,而且模型很糟糕.下一次,我将远离数据感知控件,只需使用虚拟控件(如VirtualTreeView和ExGridView)的容器.

我没有理由为什么你不能从上面的代码开始作为基础,并将泛型与数据绑定结合起来,但我可以看到很多理由你不应该这样做.