在 Firemonkey (XE5) 中,我创建了一个带有 TStringGrid 的框架,并希望添加一个“程序 ShowData(aClientSet:TClientSet);” 在该程序中,Clientset 的行应使用 LiveBindings(TBindSourceDB ?)以只读方式显示,而无需了解数据集的任何其他内容并且没有 DESIGNER?请问,这怎么能在运行时完成?以及如何控制重新填充网格,如果数据集在框架之外关闭并重新打开(在哪里触发 TBindings.notify)?谢谢。
问问题
3521 次
1 回答
1
以下对我有用:
- 在您的使用子句。
假设您的 TStringGrid 名为 grid1 并且您的数据集名为 qry1 :
var
bds: TBindSourceDB;
bdl:TBindingsList;
gtd:TLinkGridToDataSource;
开始
bds := TBindSourceDB.Create(Self);
bdl := TBindingsList.Create(Self);
gtd := TLinkGridToDataSource.Create(bdl);gtd.DataSource := bds;
gtd.GridControl := Grid1;bds.DataSet := qry1;
结尾;
希望这可以帮助!(我使用 TFDQuery 作为我的数据集,但我确信任何 TDataset 后代都应该可以正常工作。)
于 2014-01-24T06:42:35.657 回答