具有大量项目的.NET下拉列表

时间:2014-05-20 22:02:03

标签: asp.net .net drop-down-menu postback

我正在开发一个使用5个下拉列表的webpart(每个下拉列表代表'Project'表格列,如projectNo,ProjectPM,ContractNo等)。该表有超过3000个项目,因此当下拉列表最终被数据绑定时,它们有超过3000个要加载的项目,这几乎使IE停止。

构建解决方案的最佳方法是什么,因此用户仍然可以使用下拉列表界面,可能就像首先渲染一个空的下拉列表,然后使用模态窗口首先找到他们正在寻找的项目编号for,然后在下拉列表中将项目设置为选中。我正在设想以下UI。任何人都可以指导我如何解决这个问题吗?

    -------------------
                    |V|   [SearchBtn]
    -------------------

    -------------------
                    |V|    [SearchBtn]
    -------------------

    -------------------
                    |V|    [SearchBtn]
    -------------------



   [FindProjectBtn]

searchBtn上的Clickikng基本上会弹出一个弹出窗口,在那里他们可以搜索他们的东西,当他们点击匹配的结果时,它会设置下拉列表。

2 个答案:

答案 0 :(得分:1)

使用下拉列表时,一个好的经验法则是保持列表简短,这样您就不会遇到浏览器性能问题。如果您有数以千计的项目需要查看,您可以:

  • 创建一个搜索组件,用户输入他们正在搜索的项目名称的一部分,并显示一个简单的网格供他们选择。
  • 实施预先输入机制。用户输入他们正在搜索的前几个字母。您可以在数据库中查询前10个匹配并通过AJAX返回它们。

答案 1 :(得分:1)

如果您有3000个项目,那么绝对下拉列表将不是一个正确的设计决策。

在您的情况下,强烈建议使用具有分页,排序和搜索功能的任何类型的转发器列表。

但是如果你坚持要有一种下拉列表视图,那么Matthew's suggestions就是你的答案。