測試使用了官方的范例文件(主表: orders.xml; 從表: items.XML).
//先在窗體上添加:
//ClientDataSet1、DataSource1、DBGrid1、ClIEntDataSet2、DataSource2、DBGrid2; 然後:
procedure TForm1.FormCreate(Sender: TObject);
begin
{ 關聯數據集 }
DBGrid1.DataSource := DataSource1;
DataSource1.DataSet := ClIEntDataSet1;
DBGrid2.DataSource := DataSource2;
DataSource2.DataSet := ClIEntDataSet2;
{ 載入范例文件 }
ChDir(GetEnvironmentVariable('COMMONPROGRAMFILES') + '\CodeGear Shared\Data\');
ClIEntDataSet1.LoadFromFile('orders.XML');
ClIEntDataSet2.LoadFromFile('items.XML');
{ 設定主從表 }
ClIEntDataSet2.MasterSource := DataSource1;
ClientDataSet2.MasterFIElds := 'OrderNo'; { 多個字段時用分號隔開 }
end;
如果在設計時完成, 也主要是設置 MasterSource、MasterFIElds 兩個屬性, 下面是設計時的一個截圖: