首页 文章

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

提问于
浏览
2

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

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

例如

列表框2342 3434 2332 3224

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

TextBox 3 ListBox 3434 3224

然后用户在框中输入2:

文本框32 ListBox 3224

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

2 回答

  • 1

    这是一个示例解决方案

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

    还有一个

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

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

相关问题