如何过滤 DataSet 作为数据源的 DataGridView

How to Filter DataGridView with DataSet as DataSource

需要一些帮助。

我从数据库中检索数据并使用 TableAdapter 将其填充到数据集中。

MyTableAdapter.Fill(MyDataSet, "Table1")
DataGridView1.DataSource=MyDataSet
DataGridView1.DataMember="Table1"

我的 Datagridview 是这样的,我可以从原始数据集中删除和添加列。

我想过滤DataGridView,所以我使用了下面的:

Dim dv As DataView
dv = MyDataSet.Tables("Table1").DefaultView
dv.RowFilter = "day >= '05Jan15'"
DataGridView1.DataSource = dv

问题:

这会将所有列带回 Datagridview。我不希望它改变当前显示在我的 Datagridview 中的列。 我不能知道如何获取我的 Datagridview 的当前视图吗?

提前致谢!

DataGridView.AutoGenerateColumns 属性 设置为 False

这将防止 DGV 在数据源 and/or 数据成员更改时自动生成列。