Альтернативный элемент управления пользовательским интерфейсом для больших списков данных вместо DropDownList.

StackOverflow https://stackoverflow.com/questions/247438

Вопрос

В этом конкретном проекте я использую C# и ASP.NET с библиотекой .NET Framework версии 2.0.Мы также используем AjaxControlToolkit.В AjaxControlToolkit должны быть доступны элементы управления, позволяющие создать подходящее решение пользовательского интерфейса для проблемы, с которой я столкнулся.

Я столкнулся с этим в нескольких проектах за последний год и использовал разные решения в прошлом.Текущий дизайн проекта, который я только что выбрал, заключается в том, что существует элемент управления <asp:DropDownList>, и при загрузке страницы выполняется вызов базы данных для получения списка значений.Затем это связывается с использованием источника данных DropDownList.Проблема в том, что из базы данных возвращено 25 тыс. элементов.Во-первых, неприемлемо, чтобы пользователю приходилось прокручивать десятки тысяч элементов.Но, что еще более важно, в каждом браузере, в котором он тестировался (IE 7, FF 3, Safari и Chrome), браузер полностью зависает при распространении элементов раскрывающегося списка.

Я думаю об использовании Модальное всплывающее окно форма, которая Расширитель автозаполнения это позволяет пользователю перейти к конкретной компании.Итак, в поле, где им нужно выбрать компанию, они нажимают на значок «выбрать компанию», появляется модальная форма, позволяющая им использовать расширитель автозаполнения для выбора существующей компании.Они нажимают «ОК», и значение сохраняется в поле.

Тем не менее, я олдскульный специалист по командной строке/оболочке/терминалу, и мои представления о приемлемом дизайне пользовательского интерфейса могут быть искажены (дайте мне командную строку в любой системе, и я готов к работе).Мне хотелось бы получить совет от присутствующих здесь членов сообщества относительно того, что, по их мнению, было бы приемлемым решением, или сталкивались ли они с другими подобными проблемами.

Это было полезно?

Решение

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

Но если на странице загружено 0,5 МБ HTML-кода (не включая состояние просмотра), необходимо идти на компромиссы.

Почему вы думаете, что вам нужно создать модальное всплывающее окно? Разве вы не можете просто добавить расширитель на свою страницу ввода данных?

Другие советы

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

Я согласен, что ни один пользователь не захочет просмотреть 25 000 элементов, чтобы найти тот, который он хочет. Есть ли какой-нибудь способ, которым вы можете ограничить данные так, чтобы они детализировались? Как сначала выбрать регион или тип компании, а затем показать те, которые соответствуют?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top