根据OnKeyUp的文本框过滤ListBox项目?

我有一个包含大量项目的ListBox,这些项目都是帐号,因此难以搜索。

当用户键入文本框时,是否可以将项目“过滤”,以便只显示与目前输入的内容相匹配的项目?

例如

列表框
2342
3434
2332
3224

然后用户在texbox中输入3 – onKeyUp将列表框过滤为仅显示:

文本框
3

列表框
3434
3224

然后用户在框中输入2:

文本框
32

列表框
3224

这在ASP.Net(而不是MVC2)中是否可行? 如果是这样,最好通过UpdatePanel中的回调或somekind的javascript进行回调吗?

这是一个示例解决方案

private void textBox1_TextChanged(object sender, EventArgs e) { listBox1.Items.Clear(); List lst = new List {"2342","3434","2332","3224"}; listBox1.Items.AddRange(lst.Where(X => X.StartsWith(textBox1.Text)).ToArray()); } 

还有一个

 listBox1.Items.AddRange(listBox1.Items.Cast().Where(X=>X.StartsWith(textBox1.Text)).ToArray()); 

在Jquery Listbox / Textboxfilter中有一个jQuery实现,即使你不想使用jQuery,它也可以帮助你入门。