如何呈现大量项目供用户选择?

时间:2009-09-14 05:14:20

标签: silverlight user-interface

我正在构建一个Silverlight应用程序,其中一个任务将涉及用户从大约1300个项目的列表中选择一个项目。向用户展示此列表的最佳方法是什么?我认为ComboBox中有1300个项目太多了。是吗?这种情况的最佳做法是什么?这些项目是具有以下模式的库存位置:

第1行 - 过道1 - 第1级
第1行 - 过道1 - 第2级
...
第1行 - 过道2 - 第1级
...
第2行 - 过道1 - 第1级
等等。

还会有其他一些地点,例如:货运码头,中转区等......

我想有一个TextBox和ListBox,其中ListBox将开始填充用户输入TextBox的匹配项。数据可以来自Web服务还是存储在独立存储中?

4 个答案:

答案 0 :(得分:2)

是的,1300对于组合框来说太多了。使用组合框在网站上选择我的国家似乎总是对我来说是边缘线,而1300则不止于此。

对于您的数据结构,我强烈建议您选择行,然后选择过道,然后将其分为三个单独的内容。每次更新下一个框。在每个选项中,列表框的使用速度比组合框快,但占用的屏幕空间更多。

答案 1 :(得分:1)

使用上面有一个编辑框的列表(或表中有更多信息),根据用户输入的文本过滤列表。

这与问题中的建议不同,默认情况下会显示所有数据,然后将其过滤掉。

答案 2 :(得分:1)

听起来你的物品是高度分组的。这意味着您可以使用树视图显示项目,也可以显示可以选择的区域的图像(布局图?)。

拥有一个带有自动填充功能的文本框(以及在文本框旁边实时更新的-say- 20个最佳猜测列表)将是解决此问题的一种旧方法。

答案 3 :(得分:0)

我同意@tom和@davidrutten。树视图或自动完成类型控件听起来最好。查看Silverlight toolkit

中的TreeView和AutoCompleteBox控件