RowFilter之后的udapte数据表,带有过滤器结果

时间:2018-10-05 14:28:51

标签: c# .net-4.0 rowfilter

通过使用datatable在填充了表中所有行的RowFilter上应用过滤器

dtPatientInfo.DefaultView.RowFilter = string.Format("FirstLastName LIKE '%{0}%'", TB_FirstLastName.Text);

应用这些过滤器后,我想仅使用过滤器结果而不是原始数据来更新此数据表

如何将过滤器结果绑定到相同的数据表,这样它将丢失所有不匹配过滤器的行?

更新

根据下面的答案和评论,我已经做到了,但是现在将结果数据移到新的datatable上,如何将它们移到旧的datatable上?

if (!string.IsNullOrWhiteSpace(TB_FirstLastName.Text))
{
    DataView dv = new DataView(dtPatientInfo);
    dv.RowFilter = string.Format("FirstLastName LIKE '%{0}%'", TB_FirstLastName.Text);
    DataTable newTable = dv.ToTable();
    dataGridView1.DataSource = newTable;
}

1 个答案:

答案 0 :(得分:0)

这是一个从过滤后的数据创建新表的示例: https://docs.microsoft.com/en-us/dotnet/api/system.data.dataview.totable?view=netframework-4.7.2

DataView视图=新的DataView(表); view.RowFilter =“ QuantityInStock> 15”;

DataTable newTable = view.ToTable(“ FilteredTable”);