3

我正在使用DataViewRowFilter。只有一列正在过滤,但我希望过滤所有列。

我想在文本框中搜索一个词来制作这个过滤器。

DataView dv = dt.DefaultView;

if (e.KeyChar == (char)13)
{
    dv.RowFilter = string.Format("Name LIKE '%{0}%'" ,textBox1.Text );
    //  dv.RowFilter = string.Format("Date LIKE '%{0}%'", textBox1.Text);
}

列标题name = NameDate等。

4

3 回答 3

3

多列的格式应该是这样的;

dv.RowFilter = "Column1 = " + value1 + " AND Column2 = " + value2;

根据您的情况;

dv.RowFilter = string.Format("Name LIKE '%{0}%' AND Date = {1}" ,textBox1.Text, DateValue );
于 2016-01-04T05:54:36.180 回答
3
(dataGridView1.DataSource as DataTable).DefaultView.RowFilter = string.Format("Name = '{0}'", TextBoxForSearch.Text);
于 2017-09-27T11:54:43.653 回答
0
string query = textBox1.Text;
if(query == string.Empty)
{
    dataTable.DefaultView.RowFilter = string.Empty;
}
else
{
    (dgv.DataSource as DataTable).DefaultView.RowFilter = string.Format("Name = {0}", textBox1.Text);
    (dgv.DataSource as DataTable).DefaultView.RowFilter = string.Format("Date = {1}", textBox1.Text);
}
于 2018-08-28T10:24:34.670 回答