C#使用多个文本框过滤DataGridView?

时间:2018-04-30 02:22:47

标签: c# sql winforms

enter image description here

这就是它的样子。学生查找和课程查找搜索两个不同的数据库。我正在尝试从左侧的文本框中显示搜索结果。这是数据库的样子。

enter image description here

当用户单击“提交”时,将运行此代码。我从另一个帖子中检索到它但无济于事:

BindingSource bs = new BindingSource();
        bs.DataSource = dgvAdvisor.DataSource;
        bs.Filter = "First_Name like '%" + lblFirstName.Text + "%' AND 
        Username like '%" + lblUsername.Text + "%'";
        dgvAdvisor.DataSource = bs;

第3行和第4行是一行,Stack Overflow似乎将其删除。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

从您提供的代码中,看起来您正在使用Label的文本过滤数据源,并且您希望使用TextBox的文本对其进行过滤。

假设您关联的TextBox控件为txtFirstNametxtUserName, 尝试修改您的代码如下。

    BindingSource bs = new BindingSource();
    bs.DataSource = GetDataTable(); //This method should return whole data table.
    bs.Filter = "First_Name like '%" + txtFirstName.Text + "%' AND 
    Username like '%" + txtUserName.Text + "%'";
    dgvAdvisor.DataSource = bs;