创建DataTable对象

//PutthenextlineintotheDeclarationssection.
privateSystem.Data.DataSetdataSet;

privatevoidMakeDataTables()
{
//Runallofthefunctions.
MakeParentTable();
MakeChildTable();
MakeDataRelation();
BindToDataGrid();
}

privatevoidMakeParentTable()
{
//CreateanewDataTable.
System.Data.DataTabletable=newDataTable("ParentTable");
//DeclarevariablesforDataColumnandDataRowobjects.
DataColumncolumn;
DataRowrow;

//CreatenewDataColumn,setDataType,
//ColumnNameandaddtoDataTable.
column=newDataColumn();
column.DataType=System.Type.GetType("System.Int32");
column.ColumnName="id";
column.ReadOnly=true;
column.Unique=true;
//AddtheColumntotheDataColumnCollection.
table.Columns.Add(column);

//Createsecondcolumn.
column=newDataColumn();
column.DataType=System.Type.GetType("System.String");
column.ColumnName="ParentItem";
column.AutoIncrement=false;
column.Caption="ParentItem";
column.ReadOnly=false;
column.Unique=false;
//Addthecolumntothetable.
table.Columns.Add(column);

//MaketheIDcolumntheprimarykeycolumn.
DataColumn[]PrimaryKeyColumns=newDataColumn[1];
PrimaryKeyColumns[0]=table.Columns["id"];
table.PrimaryKey=PrimaryKeyColumns;

//InstantiatetheDataSetvariable.
dataSet=newDataSet();
//AddthenewDataTabletotheDataSet.
dataSet.Tables.Add(table);

//CreatethreenewDataRowobjectsandadd
//themtotheDataTable
for(inti=0;i<=2;i++)
{
row=table.NewRow();
row["id"]=i;
row["ParentItem"]="ParentItem"+i;
table.Rows.Add(row);
}
}

privatevoidMakeChildTable()
{
//CreateanewDataTable.
DataTabletable=newDataTable("childTable");
DataColumncolumn;
DataRowrow;

//CreatefirstcolumnandaddtotheDataTable.
column=newDataColumn();
column.DataType=System.Type.GetType("System.Int32");
column.ColumnName="ChildID";
column.AutoIncrement=true;
column.Caption="ID";
column.ReadOnly=true;
column.Unique=true;

//AddthecolumntotheDataColumnCollection.
table.Columns.Add(column);

//Createsecondcolumn.
column=newDataColumn();
column.DataType=System.Type.GetType("System.String");
column.ColumnName="ChildItem";
column.AutoIncrement=false;
column.Caption="ChildItem";
column.ReadOnly=false;
column.Unique=false;
table.Columns.Add(column);

//Createthirdcolumn.
column=newDataColumn();
column.DataType=System.Type.GetType("System.Int32");
column.ColumnName="ParentID";
column.AutoIncrement=false;
column.Caption="ParentID";
column.ReadOnly=false;
column.Unique=false;
table.Columns.Add(column);

dataSet.Tables.Add(table);

//CreatethreesetsofDataRowobjects,
//fiverowseach,andaddtoDataTable.
for(inti=0;i<=4;i++)
{
row=table.NewRow();
row["childID"]=i;
row["ChildItem"]="Item"+i;
row["ParentID"]=0;
table.Rows.Add(row);
}
for(inti=0;i<=4;i++)
{
row=table.NewRow();
row["childID"]=i+5;
row["ChildItem"]="Item"+i;
row["ParentID"]=1;
table.Rows.Add(row);
}
for(inti=0;i<=4;i++)
{
row=table.NewRow();
row["childID"]=i+10;
row["ChildItem"]="Item"+i;
row["ParentID"]=2;
table.Rows.Add(row);
}
}

privatevoidMakeDataRelation()
{
//DataRelationrequirestwoDataColumn
//(parentandchild)andaname.
DataColumnparentColumn=
dataSet.Tables["ParentTable"].Columns["id"];
DataColumnchildColumn=
dataSet.Tables["ChildTable"].Columns["ParentID"];
DataRelationrelation=new
DataRelation("parent2Child",parentColumn,childColumn);
dataSet.Tables["ChildTable"].ParentRelations.Add(relation);
}

privatevoidBindToDataGrid()
{
//InstructtheDataGridtobindtotheDataSet,withthe
//ParentTableasthetopmostDataTable.
dataGrid1.SetDataBinding(dataSet,"ParentTable");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值