我的C#应用程序中有一些代码从SQL数据库中提取数据。从DataTable中提取特定的列
此DataTable
用于我的应用程序的各个位置,并显示在多个DataGridViews
。
但是,我想仅显示Datatable
中的一些列,而不是全部列。
此外,我想要显示的列在每个DataGridViews
中都不相同。
例如
- 显示列1-3 DataGridView1
- 显示列4-6 DataGridView2
- 显示列7-12 DataGridView3
等
我当然可以只写不同的代码来为每个DataGridViews
从SQL中提取必需的字段,但这看起来并不像一个非常简洁的解决方案。
如果我可以使用从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
方法,但实际上,它的列我要筛选。
这怎么办?
感谢你们俩 – PJW