本文介绍如何用C1TrueDBGrid快速创建子表格,显示用户需求的数据和界面。

子表格

True DBGrid可以允许在数据源之间以这样一种方式来显示主关系或子关系,即子数据记录在主表格内的一个全新的True DBGrid中可用。通过简单设置ChildGrid属性来将两个表格控件与几行代码联系在一起,这样,可以创建一个完全可编辑的,只要一个简单的点击就会出现在主表格中的下拉子数据。True DBGrid控件可以处理的层级没有数目上的限制。

在本文Demo中的TrueDBGrid有三层结构,创建步骤如下所示:

1.TrueDBGrid连接数据源:创建三个不同的TrueDBGrid,分别通过DataSource属性连接数据源,代码如下所示。

private C1.Win.C1TrueDBGrid.C1TrueDBGrid c1TrueDBGrid1 = new C1.Win.C1TrueDBGrid.C1TrueDBGrid();
private C1.Win.C1TrueDBGrid.C1TrueDBGrid c1TrueDBGrid2 = new C1.Win.C1TrueDBGrid.C1TrueDBGrid();
private C1.Win.C1TrueDBGrid.C1TrueDBGrid c1TrueDBGrid3 = new C1.Win.C1TrueDBGrid.C1TrueDBGrid();
this.c1TrueDBGrid1.DataSource = this.customersBindingSource;
this.c1TrueDBGrid2.DataSource = this.customersOrdersBindingSource;
this.c1TrueDBGrid3.DataSource = this.ordersOrderDetailsBindingSource;

2.TrueDBGrid创建主从关系:将不同的TrueDBGrid创建主关系或子关系,只需要通过简单设置ChildGrid属性来将两个表格控件与几行代码联系在一起。比如本文的三个TrueDBGrid,显示c1TrueDBGrid2是c1TrueDBGrid1的子关系,将子数据记录在c1TrueDBGrid1内的一个c1TrueDBGrid2,并设置c1TrueDBGrid1的ChildGrid属性。本文三个TrueDBGrid的主从关系设置如代码所示:

this.c1TrueDBGrid1.ChildGrid = this.c1TrueDBGrid2;
this.c1TrueDBGrid2.ChildGrid = this.c1TrueDBGrid3;

 

这样子就可以船舰一个完全可编辑的的表格,当用户点击执行点击操作就可以出现主表格的下拉子数据。效果如图所示:

本文Demo的源代码如下:

TrueDBGrid-ChildGrids.7z (2.21 mb)