我用TStringGrid创建了一个Frame,想要添加一个 “procedure ShowData(aClientSet:TClientSet);” 在那个pprocedure中,Clientset的行应该只用LiveBindings(TBindSourceDB?)显示,而不知道数据集和WITHOUT DESIGNER的其他内容? 请问,如何在运行时完成? 以及如何控制Grid重新填充,如果数据集关闭并在Frame外重新打开(在哪里触发TBindings.notify)? THX。
答案 0 :(得分:0)
以下对我有用:
假设您的TStringGrid名为grid1,而您的数据集名为qry1:
变种
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后代都应该正常工作。)