时间: 2021-07-31 作者:daque
n overloads public overridable function add() as datatablen overloads public overridable sub add(byval table as datatable)n overloads public overridable function add(byval name as string) as datatablen public sub addrange(byval tables() as datatable)参数1. table 要增添的 datatable 东西。 2. name 要付与已创造的 datatable 的称呼。 3. tables 要增添到汇合中的 datatable 东西的数组。datatablecollection 包括一定 dataset 的一切 datatable 东西。若要考察 dataset 的 datatablecollection,请运用 tables 属性。datatablecollection 运用诸如 add、clear 和 remove 之类的本领处置汇合中的名目。运用 contains 本领决定汇合中能否有一定表(由索引或称呼指定)。若要从一个表欣赏到另一个表,请运用 datatable 的 childrelations 或 parentrelations 属性来考察它的 datarelation 东西的汇合。还可运用 relations 属性欣赏给定的 dataset 汇合中 datatables 的父/子联系。示例private sub addtable() dim dset as dataset= ctype(datagrid1.datasource, dataset) dim dt as datatable dt = dset.tables.add("mynewtable") messagebox.show(dt.tablename) messagebox.show(dset.tables.count.tostring() & " tables") dim i as integer for i = 0 to 2 dset.tables.add() next i messagebox.show(dset.tables.count.tostring() & " tables") dim tables as datatablecollection = ctype(datagrid1.datasource, dataset).tables tables.add(new datatable) messagebox.show(dset.tables.count.tostring() & " tables") dim t as datatable dim r as datarow dim c as datacolumn for each t in dset.tables console.writeline(t.tablename) for each r in t.rows for each c in t.columns if not (r(c) is nothing) then console.writeline(r(c)) end if next next next dim t1 as datatable = new datatable("customers" ) t1.columns.add("customerid", type.gettype("system.int32")).autoincrement = true t1.columns.add("name", type.gettype("system.string")) t1.primarykey = new datacolumn() { t1.columns("customerid") } dim t2 as datatable = new datatable("orders" ) t2.columns.add("orderid", type.gettype("system.int32")).autoincrement = true t2.columns.add("customerid", type.gettype("system.int32")) t2.columns.add("amount", type.gettype("system.double")) t2.primarykey = new datacolumn() { t2.columns("orderid") } dset.tables.addrange( new datatable() {t1, t2} ) for each t in dset.tables console.writeline(t.tablename ) for each c in t.columns console.write("{0}" & vbtab, c.columnname) next console.writeline() next messagebox.show(dset.tables.count.tostring() & " tables")end sub