【发布时间】:2017-05-15 23:01:32
【问题描述】:
我有来自文本框输入的行过滤器,这是它的样子
var dt = (DataTable)dataGridView1.DataSource;
try
{
dt.DefaultView.RowFilter = string.Format("KATBR like '%{0}%'", filterKatbr.Text.Trim().Replace("'", "''")) + "AND " + string.Format("NAZIV like '%{0}%'", filterNaziv.Text.Trim().Replace("'", "''"));
dataGridView1.Refresh();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
它支持 2 个文本框并同时从 2 个文本框过滤,但现在让我们专注于一个文本框。我想要实现的是,如果我在文本框中输入类似 Computer%Land 的内容,它需要过滤我必须有 Computer 的所有内容,然后在其后必须有 Land 之间的任何字符。
anything between 使用什么字符并不重要。我使用了%,但它可以是任何东西。
所以如果我有这样的表:
|Computer432Land |
|Computer321 Land |
|Land 213 Computer |
|Computer asd13 Land|
结果将是第一列、第二列和第四列。
【问题讨论】:
标签: c# datagridview rowfilter