實現該功能是用了DataView的篩選功能,DataView表示用於排序、篩選、搜索、編輯和導航的 DataTable 的可綁定數據的自定義視圖。 這裏作了一個簡單易懂的Demo來說述該方法。sql
namespace UbdTest { public partial class Demo : Form { DataTable dt = new DataTable();//數據源 DataTable dtTemporary = new DataTable();//接收返回的所需數據 public Demo() { InitializeComponent(); } private void Demo_Load(object sender, EventArgs e) { GetData();//調用獲取數據方法得到數據 } /// <summary> /// 從數據庫獲取數據方法 /// </summary> private void GetData() { //創建數據庫連接 string sqlconString = "Data Source=(local);Initial Catalog=Demo;User ID=sa;Password=sa";//建立鏈接字符串sqlconString SqlConnection objcon = new SqlConnection(sqlconString);//建立sql數據鏈接對象objcon objcon.Open();//打開數據庫連接 //建立一個DataAdapter對象,它表示數據庫和DataSet對象之間的連接 SqlDataAdapter dataAdapter = new SqlDataAdapter("Select*From 工做表", objcon); //建立DataSet對象的一個實例,爲整個DataSet提供一個名稱,而後才能開始加載數據 DataSet ds = new DataSet("Demo");//test爲數據來源數據庫 //用SqlDataAdapter類提供的Fill方法向DataSet加載數據 dataAdapter.Fill(ds, "工做表"); dt = ds.Tables[0]; } private void button1_Click(object sender, EventArgs e) { dataGridView1.DataSource = dt; } private void button2_Click(object sender, EventArgs e) { DataView dataview = dt.DefaultView; dtTemporary = dataview.ToTable(true,"日期"); dataGridView2.DataSource = dtTemporary; } private void button3_Click(object sender, EventArgs e) { DataView dataview = dt.DefaultView; dtTemporary = dataview.ToTable(true, "工做內容"); dataGridView3.DataSource = dtTemporary; }