私の C# アプリケーションには、SQL データベースからデータを抽出するコードがあります。
これDataTableは、アプリケーション全体のさまざまな場所で使用され、複数で表示されますDataGridViews。
ただし、すべての列ではなく、一部の列のみを表示したいと考えていDatatableます。
また、表示したい列はそれぞれで異なりますDataGridViews。
例えば
- DataGridView1 で列 1 ~ 3 を表示
- DataGridView2 で列 4 ~ 6 を表示
- DataGridView3 で列 7 ~ 12 を表示
等
もちろん、SQL から必要なフィールドを抽出するために異なるコードを書くこともできますDataGridViewsが、これは非常に簡潔な解決策とは思えません。
SQL から抽出したものを使用DataTableし、アプリケーションで複数のフィルターを適用して、それぞれのDataGridViews.
私は使用を見ましDataViewたが、これにはメソッドがありますが、メソッドSortがないようですFilter
例えば
DataTable table = GetDateFromSql();
DataView view = new DataView(table);
view.Sort = "FieldName";
理想的には、次のようなことができるようになりたいです-
view.Filter = "SELECT cola, colB, colC";
myDataGridView.DataSource = view;
メソッドがあることは知っていますRowFilterが、実際には、フィルタリングしたい列です。
これはどのように行うことができますか?