如何过滤范围之间的datagridview行?

How to filter datagridview rows between range?

我有一个名为拷贝数的列,其中仅包含如下数字:

copy number
 1
 33
 12
 40
 100

如何获取 1100 之间的行,在此示例中,范围是行 (33、12、40)?

我的数据来自 mysql 数据库,GridView 是这样填充的:

MySqlDataAdapter a = new MySqlDataAdapter(query, conn)
DataTable t = new DataTable();
a.Fill(t);
dataGridView1.DataSource = t;

PS: 代码中的答案将不胜感激!

您可以尝试深入研究文章 "BindingSource.Filter Property" on MSDN

根据那里的信息,我会尝试对您的代码执行此操作:

// your original starter code
MySqlDataAdapter a = new MySqlDataAdapter(query, conn)
DataTable t = new DataTable();
a.Fill(t);

// Create a seperate bindingsource object you can control
var bindingSource = new BindingSource();
bindingSource.DataSource = t;

// Now sort on a column
bindingSource.Filter = "[copy number] >= 1 AND [copy number] <= 100";

// Assign that bindingsource object to the dgv
dataGridView1.DataSource = bindingSource;

您可能希望将列名称 copy number 编辑为 cncopy_number 之类的名称,我在此处添加了方括号 [],因为那是 .