Как представить большой список предметов для пользователя, чтобы выбрать один? - PullRequest
1 голос
/ 14 сентября 2009

Я создаю приложение Silverlight, в котором одна из задач будет состоять в том, чтобы пользователь выбрал один элемент из списка приблизительно из 1300 элементов. Каковы некоторые из лучших способов представить этот список пользователю? Я думаю, что 1300 предметов в ComboBox это слишком много. Это? Каковы лучшие практики для такой ситуации? Предметы - это места в инвентаре с таким шаблоном, как:

Ряд 1 - Проход 1 - Уровень 1
Ряд 1 - Проход 1 - Уровень 2
...
Ряд 1 - Проход 2 - Уровень 1
...
Ряд 2 - Проход 1 - Уровень 1
и так далее.

Также будут некоторые другие локации, такие как: док-станция для отгрузки, площадка для постановки и т. Д. *

Я бы хотел иметь TextBox и ListBox, где ListBox будет заполняться совпадениями с тем, что пользователь вводит в TextBox. Данные могут быть из веб-службы или храниться в изолированном хранилище?

Ответы [ 4 ]

2 голосов
/ 14 сентября 2009

Да, 1300 - это слишком много для поля со списком. Использование поля со списком для выбора моей страны на веб-сайте всегда кажется мне пограничным, и 1300 - это нечто большее.

С вашей структурой данных я настоятельно рекомендую выбрать строку, затем проход, а затем уровень как три отдельные вещи. Обновляйте следующую коробку каждый раз. Внутри каждого выбора списки работают быстрее, чем поля со списком, но занимают больше места на экране.

1 голос
/ 14 сентября 2009

Похоже, ваши предметы сильно сгруппированы. Это означает, что вы можете использовать древовидное представление для представления элементов или даже отобразить изображение (план этажа?) Областей, которые можно выбрать.

Наличие текстового поля с автозаполнением (и списка -say- 20 лучших догадок, обновляемых в режиме реального времени рядом с текстовым полем) было бы старым способом решения этой проблемы.

1 голос
/ 14 сентября 2009

Используйте список (или таблицу, если есть больше информации) с полем редактирования выше, которое фильтрует список на основе текста по мере ввода пользователем.

Это отличается от того, что предлагается в вопросе, так как по умолчанию он показывает все данные и затем фильтрует их.

0 голосов
/ 15 сентября 2009

Я согласен как с @tom, так и с @davidrutten. Лучше всего звучат элементы управления типа дерева или автозаполнения. Посмотрите на элементы управления TreeView и AutoCompleteBox в наборе инструментов Silverlight

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...