Если пользователь знает точное значение, которое он или она хочет, из хорошо отсортированного списка с опережением ввода, тогда более 1000 пунктов в порядке. Шутки в сторону. Попробуйте сами: выполните поиск на своем жестком диске, который выдает около 1000 файлов, и посмотрите, насколько сложно прокрутить или набрать текст, который, как вы знаете, есть.
Что важнее, чем просто количество элементов, так это соотношение элементов в списке к элементам, видимым на вашей прокручиваемой панели, независимо от того, говорите ли вы о списке или раскрывающейся части поля со списком. Вы хотите, чтобы по крайней мере 5% ваших предметов были видны одновременно. Таким образом, для 1000 элементов вам понадобится панель высотой около 800 пикселей (по 16 пикселей на строку). Это устанавливает около 1000 в качестве предела с учетом типичных низкоуровневых настольных мониторов. Если вы говорите о пользователях с ноутбуками, использующими веб-сайт, то у вас есть только около 560 пикселей (с учетом элементов управления браузером и т. Д.), Поэтому теперь вы просматриваете 700 элементов. Еще много. Мы предполагаем правильный прокручиваемый список, где список прокручивается мгновенно при перетаскивании ползунка.
Я вижу необходимость в фильтрах / элементах управления поиском (по сравнению с одним типом впереди) только тогда, когда количество элементов больше похоже на 1000 с, а не 100, хотя вам нужно делать исключения для особых случаев (например, когда пользователь на самом деле знать, что он / она точно хочет и должен исследовать альтернативы по различным критериям или когда большое количество элементов начинается с одинаковых 9 букв).
Всегда имейте опережающий ввод. Нет причин не делать этого, и даже при небольшом количестве элементов это выгодно пользователям, использующим только клавиатуру, а не мышь (очень часто используется для ввода данных). Относитесь к этому как к стандарту. Вы не хотите, чтобы пользователям приходилось угадывать, выбрали ли вы опережающий ввод или нет для определенного поля («Считает ли он, что 10 элементов достаточно? У него когда-нибудь есть?»), Так что просто имейте это все время.