通过使用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;
}
答案 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”);