正在数据网格视图中搜索数据
本文关键字:数据 搜索 视图 数据网 网格 | 更新日期: 2023-09-27 18:22:08
我有一个数据网格视图,它显示数据库表中的数据。有两列ID和NAME。我有一个文本框,我在其中输入名称,这些名称的数据显示在datagridview中。我已经实现了对数据的搜索,但我想像在comboBox中所做的那样进行搜索。当我键入"a"时,所有以"a"开头的名称都应该出现在datagridview中。然后,如果我键入"arn",那么所有以"arn"开头的名称都应该出现在datagridview中。我需要知道是否有一个内置的方法或一些LOGIC,我应该考虑。我正在使用Linq到Sql。
编辑-1
我在表单类中创建了一个子类
public class Table1
{
public int ID;
public string Name;
public MyList(string _newID, string _newName)
{
_id = _newID;
_name = _newName;
}
public int _id
{
get { return ID; }
set { ID = value; }
}
public string _name
{
get { return Name; }
set { Name = value; }
}
}
使用BindingList将其与dataGridView1绑定。我已经在textBox1上应用了textChanged事件。
BindingList<Table1> tempData = new BindingList<Table1>();
string name = textBox1.Text;
var result = from row in context.Tables
where row.Name == name
select row;
foreach (Table std in result)
{
tempData.Add(new MyList(row.ID, row.Name);
}
dataGridView1.DataSource = tempData;
我就是这样做的,但这搜索完全相同的名字。我想让它像comboBox下拉搜索一样。其中,在键入的每个键上,搜索结果都会给出包含这些字符的名称/字符串。
谢谢。
试试这个
实体框架通配符&Linq
类似运算符或在LINQ to Entities 中使用通配符
http://www.codeproject.com/Articles/634104/Csharp-Wildcard-Search-Using-LINQ