0

我的表单上有一个 Sql 查询,在我的 tableA 中显示所有到期日期为 2013 年的记录,填充数据网格视图。我还有一个按钮和文本框。

我想做的是在datagrid视图上过滤我的sql查询结果,是否有可能有另一个这样的sql:

"SELECT caseno, duedate,remarks from (the data on my datagrid view)"

这是我的数据网格示例:

    caseno      duedate       remarks
    1001        1/12/13       passed
    1002        1/22/13       passed
    1003        1/15/13       failed
    1004        1/20/13       none
    1005        1/06/13       failed

当我单击按钮时,我想在我的数据网格上显示所有具有我在文本框中输入的备注的记录。任何人都可以帮助我吗?天呐!试着让它简单:)

4

4 回答 4

1

解决方案1:

  1. 设置datagridview的数据源选择sql查询
  2. 仅在文本更改事件发生时绑定数据
  3. 在按钮单击事件上对文本框文本进行验证

参考:如何在数据网格视图中过滤记录并在数据网格中显示选定的记录

解决方案2:

使用在文本框中输入的数据检查代码项目上的此帖子以过滤 DataGridview

需要注意的重要一点是,您可以将DataView's.RowFilter与您在 中输入的参数一起使用textbox。然后将该 DataView 绑定RowSourceGridView. 在上面的示例中,它使用:

dataview.RowFilter = "Year(Duedate) = " + textBox1.Text + ";
dataGridView1.DataSource = dataview;

您还可以在 SO 中找到许多其他文章。

于 2013-01-25T04:12:19.323 回答
0

通过使用 dataview 行过滤器,您可以过滤数据

于 2013-01-25T14:12:12.350 回答
0

您用于过滤备注的选择语句:

SELECT caseno, duedate, remarks FROM yourTable name where remarks = '"& txt1.text &"'

您还可以制作一个包含备注列表的组合框,并将 txt1.text 替换为 combobox1.text

把它放在datagridview上:(在你的按钮事件中)

    'declare your dataset and adapter
    Dim adapter As MySqlDataAdapter
    Dim ds As New DataSet

Try

        connect()
        adapter = New MySqlDataAdapter("SELECT caseno, duedate, remarks FROM yourTable name where remarks = '"& txt1.text &"'", con)
        adapter.Fill(ds)
        yourdatagridview.DataSource = ds.Tables(0)

 Catch ex As Exception
        MsgBox(ex.Message)
    End Try
    con.Close()
于 2013-01-25T04:52:41.213 回答
0

BindingSource.Filter怎么样

 BindingSource.Filter = "caseno Like '" textBox.Text + "%'"
于 2013-01-25T07:57:33.667 回答