0
我的程序运行时,客户端输入他正在查找的内容,并在SQL数据库中搜索它。当他点击搜索时,它会出现在datagridview中。在整个表格中运行搜索
我希望客户输入任何单词,单词的开头或结尾,而不是在一列中查看它将在整个表中查找。
如何编程?
clsdatasource.search获取文本框中的内容并将其存储在变量中。
DataView myview = new DataView(mytable);
myview.RowFilter = "CUSTOMER='" + clsDataSource.search + "'";
dataGridView1.DataSource = myview;
我试了一下:
for (int i = 0; i < myset.Tables[0].Columns.Count; i++) {
DataRow[] MyDR = myset.Tables[0].Select(myset.Tables[0].Columns[i].ToString() + "='" + clsDataSource.search + "'");
if (MyDR.Length > 0) {
dataGridView1.DataSource = myview;
}
}
您可以遍历所有行并检查每个列的部分字符串匹配。 –
所以我只是试过,但我有一些列存储日期和时间 – Cbz
这样的事情可能会工作︰foreach(var gridView.Rows){foreach(var c in r.Columns){// code to search here如果你使用linq,你可以在内部的foreach循环中做这样的事情,我想:foreach(var c in r.Columns.Where(x => x.DataType!= typeof( DateTIme)) –