排序并过滤后再添加到新表中 [英] sorted and filtered recored adding to new table

查看:80
本文介绍了排序并过滤后再添加到新表中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨专家
我正在使用此代码将"bname"表中的数据添加到"table1"中,
它工作正常,但我需要添加排序和过滤后的记录到我的新表"table1"中?

''创建表格
将Dim Table1作为DataTable
Table1 =新的DataTable
Table1.Columns.Add("Id",Type.GetType("System.Int32"))
Table1.Columns.Add("Name",Type.GetType("System.String"))


昏暗的行作为DataRow


Dim i As Integer
对于i = 0到ds.Tables("bname").Rows.Count-1
行= Table1.NewRow()
Row("id")= ds.Tables("bname").Rows(i)("bookid")
Row("name")= ds.Tables("bname").Rows(i)("bname")
Table1.Rows.Add(Row)
下一个
TextBox2.Text = Table1.Rows.Count


如果ds.Tables.Contains("table1")= True,那么
ds.Tables.Remove("table1")
如果结束

ds.Tables.Add("table1")

Dim j,rp,t作为整数
t = Table1.Rows.Count-1

TextBox1.Text = t
rp = 0


当j = 0到t
lbbname.Items.Add(Table1.Rows(j)("id"))

rp + = 1

Next

hi experts
i m using this code for adding data from "bname" table to "table1",
it''s working nice but i need to adding with sorted and filtered recored to my new table "table1" ?

''Create the table
Dim Table1 As DataTable
Table1 = New DataTable
Table1.Columns.Add("Id", Type.GetType("System.Int32"))
Table1.Columns.Add("Name", Type.GetType("System.String"))


Dim Row As DataRow


Dim i As Integer
For i = 0 To ds.Tables("bname").Rows.Count - 1
Row = Table1.NewRow()
Row("id") = ds.Tables("bname").Rows(i)("bookid")
Row("name") = ds.Tables("bname").Rows(i)("bname")
Table1.Rows.Add(Row)
Next
TextBox2.Text = Table1.Rows.Count


If ds.Tables.Contains("table1") = True Then
ds.Tables.Remove("table1")
End If

ds.Tables.Add("table1")

Dim j, rp, t As Integer
t = Table1.Rows.Count - 1

TextBox1.Text = t
rp = 0


For j = 0 To t
lbbname.Items.Add(Table1.Rows(j)("id"))

rp += 1

Next

推荐答案


请尝试以下操作:

//具有两列Id和Name的数据表
昏暗的dtbook作为DataTable;
//过滤书号为<的行10
DataView dvbook = dtbook.DefaultView.RowFilter ="Id< = 10";
//按升序订购书籍.
dvbook.Sort =名称升序";

//仅复制原始书本表的结构
DataTable dtFilterBook = dtbook.Clone();
//创建新表以存储过滤器记录
foreach(dvbook中的DataRowView rowView)
{
dtFilterBook.ImportRow(rowView);
}


谢谢&问候,
Imdad
Hi
please try following:

//Datatable with two column Id and Name
Dim dtbook As DataTable;
//Filter row with book id < 10
DataView dvbook = dtbook.DefaultView.RowFilter = "Id<=10";
//Ordering books in ascending.
dvbook.Sort = "Name Asc";

//Copy only structured of orizinal book table
DataTable dtFilterBook = dtbook.Clone();
//Create new table to store filter records
foreach(DataRowView rowView in dvbook)
{
dtFilterBook.ImportRow(rowView);
}


Thanks & Regards,
Imdad


这篇关于排序并过滤后再添加到新表中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆