我的 C# 应用程序中有一些代码从 SQL 数据库中提取数据。
这DataTable
在我的应用程序中的各个地方使用,并以多个DataGridViews
.
但是,我只想显示 中的一些列Datatable
,而不是全部。
此外,我要显示的列在每个DataGridViews
.
例如
- 在 DataGridView1 中显示第 1-3 列
- 在 DataGridView2 中显示第 4-6 列
- 在 DataGridView3 中显示第 7-12 列
ETC
我当然可以编写不同的代码来从 SQL 中为每个 提取所需的字段DataGridViews
,但这似乎不是一个非常简洁的解决方案。
如果我可以使用DataTable
从 SQL 中提取的那个,并在应用程序中对其应用多个过滤器以在每个DataGridViews
.
我看着 usingDataView
但是虽然这有一个Sort
方法,但它似乎没有一个Filter
方法
例如
DataTable table = GetDateFromSql();
DataView view = new DataView(table);
view.Sort = "FieldName";
理想情况下,我希望能够做类似的事情 -
view.Filter = "SELECT cola, colB, colC";
myDataGridView.DataSource = view;
我知道有一种RowFilter
方法,但实际上,它是我要过滤的列。
如何才能做到这一点?