C#:具有List<;字符串>;作为数据源

本文关键字:gt 数据源 字符串 lt 具有 List | 更新日期: 2023-09-27 17:58:21

我有一个列表框,它有一个指定为数据源的列表:

List<String> files = new List<String>();   
files.Add("test");   
files.Add("test2");   
ListBox1.DataSource = files;   

现在列表框显示了列表的两个条目。

有没有一种方法可以使用文本框实现简单的过滤机制?因此,如果我在文本框中输入"2",那么应该只显示"test2"条目。

有什么建议吗?

C#:具有List<;字符串>;作为数据源

您可以这样筛选列表:

var filteredFiles = files.Where(x=>x.Contains(TextBox1.Text));

然后将filteredFiles分配为DataSource

希望这能有所帮助。

编辑:试试这个:

 var filteredFiles = files.Where(x=>x.Contains(TextBox1.Text)).ToArray();

 var filteredFiles = files.Where(x=>x.Contains(TextBox1.Text)).ToList();

对不起,我已经有一段时间没有在asp.net中进行数据绑定了:D

试试这个:

ListBox1.DataSource = files.Where(item => item.Contains(textBox.Text));

我假设您希望在客户端执行此操作,而不仅仅是用C#过滤List对象。如果是这种情况,您可以使用jQuery插件来提供帮助。查看筛选列表插件:http://plugins.jquery.com/project/FilteredList

请在此处查看演示:http://emi.github.com/filtered_list/#long-静态列表