我看到in this video很容易添加一个文本框并让它驱动datagridView的过滤。问题出现在这个视频中,您似乎必须具体根据哪个列进行过滤。
RowFilter = "FirstName like "%' + searchText.Text + '%"
但如果我想要检查所有字段并显示该行(如果任何列中包含我的搜索字符串)该怎么办
答案 0 :(得分:4)
您希望遍历行中的每一列并附加OR比较
这是非常愚蠢的代码,但希望能给你一个好主意。类似的东西:
StringBuilder filter = new StringBuilder();
foreach(var column in dataGridView.Columns)
{
if(filter.ToString() == "")
{
filter.Append(column.Name + " like '" + searchText.Text + "'");
}
else
{
filter.Append(" OR ");
filter.Append(column.Name + " like '" + searchText.Text + "'");
}
}
RowFilter = filter.ToString();