我正在尝试过滤一个DataGridView,该数据源是一个数据集。

因此,我使用以下行来过滤网格:

DataTable dt = (dataGridViewMain.DataSource as DataSet).Tables[0];
dt.DefaultView.RowFilter = "CustomerName = 'My Customer'";


但是,网格不会被过滤,所有行仍会显示。我想念什么?

最佳答案

然后,您需要重新绑定网格。我建议您调用函数数据以获取数据集,然后应用rowfilter:

var view=GetDataSet().Tables[0].DefaultView
view.RowFilter = "CustomerName = 'My Customer'";
dataGridViewMain.DataSource=view;
dataGridViewMain.DataBind();


否则,您可能必须这样做:

var view=(dataGridViewMain.DataSource as DataSet).Tables[0].DefaultView
view.RowFilter = "CustomerName = 'My Customer'";
dataGridViewMain.DataSource=view;
dataGridViewMain.DataBind();

关于c# - 筛选DataGridView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10137983/

10-09 09:56