创建聚合字段时,不会自动添加TClientDataSet聚合规范

时间:2008-08-22 12:34:45

标签: delphi

我需要在TClientDataSet中创建聚合字段,但正如文档中所述:

  

选择确定。新定义的聚合   字段自动添加到   客户端数据集及其聚合   属性自动更新为   包括适当的聚合   说明书

当我添加新的聚合字段时,聚合规范不会添加到TClientDataSet的聚合中,因此我无法使用其OnUpdateMethod。

我也试过处理我的新聚合字段的OnChange事件,但它根本没有被触发。

我做错了吗?我只想拥有一个聚合字段,并在事件发生变化时触发事件。

这是在delphi上打破了吗?因为文档中的内容并不反映实际行为。

修改 @Michal Sznajder 我正在使用Delphi 2007

2 个答案:

答案 0 :(得分:4)

我认为您可能会对TAggregate和TAggregateField对象感到困惑,而Delphi文档可能没有帮助。

AFAICT,TAggregateField对象会自动“重新计算”,并且可以绑定到数据感知控件(如TDBText),但没有任何OnUpdate事件。

另一方面,“TAggregate”对象确实有OnUpdate事件,但不能绑定到数据感知控件。

这可能具有启发性:http://dn.codegear.com/article/29272

答案 1 :(得分:1)

哪个版本的Delphi?我刚刚尝试了干净的D7应用程序并添加了TAggregateField。