【发布时间】:2018-02-23 04:28:33
【问题描述】:
DataTable dt = new DataTable();
private void txtSearch_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Return)
{
DataView dv = dt.DefaultView;
dv.RowFilter = string.Format("Description LIKE '%{0}%' OR Manufacturer LIKE '%{0}%' OR ManufacturerItemNumber LIKE '%{0}%' OR ItemNumber LIKE '%{0}%'", txtSearch.Text);
dataGridView.DataSource = dv;
dataGridView.Update();
dataGridView.Refresh();
}
}
首先我连接到我的 sql 数据库,显示所有记录。然后我运行这段代码。当我在文本框中输入内容时效果很好。但我还想通过添加额外的文本框来缩小过滤结果的范围。使用第二个文本框,我想从第一个文本框中过滤过滤后的数据。
private void Descrip_txtbox_KeyDown(object sender, KeyEventArgs e)
{
DataView dv = dt.DefaultView;
dt = dv.ToTable();
if (e.KeyCode == Keys.Return)
{
dv.RowFilter = string.Format("Description LIKE '%{0}%' OR Manufacturer LIKE '%{0}%' OR ManufacturerItemNumber LIKE '%{0}%' OR ItemNumber LIKE '%{0}%'", Descrip_txtbox.Text);
dataGridView.DataSource = dv
}
我想在第一次搜索时从 txtsearch 文本框中获取过滤后的数据,然后使用下一个文本框再次过滤,依此类推。
有人可以帮帮我吗? 谢谢。
【问题讨论】:
标签: c# datagridview