DataSetとDataGridViewデータソースバインディング

DataGridViewとDataSetを、自分のデータベーステーブルのすべての値とリンクしました。しかし、私がやりたいことは、私のDataSetから特定の値を表示するためにDataGridViewをフィルタリングすることです:

例えば: (EmployeeID = 4の場合)

最初のバインディングオブジェクトを変更せずにこれを行う方法はありますか?

//Initial datasource
dgv.DataSource = DataSet1.Table[0];

//Some filter code here to display DataSet1 where employeeID = 1

//初期バインディングを変更せずにこれらの結果をdgvに表示します。

1
私はこの問題に対する答えを見つけました。BindingSourceオブジェクトを使用するBindingSource bs = new BindingSource();
追加された 著者 SpaceApple,

1 答え

DataTable.DefaultView を使用してフィルタリングおよびソートできます。

DataTable dt = GetProductTable( );
dt.DefaultView.Sort = "ProductName";
dt.DefaultView.RowFilter = "CategoryID=1";
dataGridView1.DataSource = dt.DefaultView;

Northwindデータベースを使用した例:

select ProductID, ProductName, SupplierID, CategoryID, UnitPrice from Products;
1
追加された
助けてくれてありがとう!できます
追加された 著者 SpaceApple,