如何过滤范围之间的datagridview行?
How to filter datagridview rows between range?
我有一个名为拷贝数的列,其中仅包含如下数字:
copy number
1
33
12
40
100
如何获取 1 和 100 之间的行,在此示例中,范围是行 (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
编辑为 cn
或 copy_number
之类的名称,我在此处添加了方括号 []
,因为那是 .
我有一个名为拷贝数的列,其中仅包含如下数字:
copy number
1
33
12
40
100
如何获取 1 和 100 之间的行,在此示例中,范围是行 (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
编辑为 cn
或 copy_number
之类的名称,我在此处添加了方括号 []
,因为那是