ограничить выбор в списке в vb.net - PullRequest
3 голосов
/ 12 февраля 2009

Я создаю веб-элемент управления в vb.net, который содержит поле со списком. Я знаю, что могу выбрать режим выделения «Один» или «Несколько», но я заинтересован в ограничении выбора «Несколько» до заданного размера. Например, запретить пользователю выбирать более 3 элементов.

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

Любые идеи или предложения будут с благодарностью

Редактировать: К сожалению, из-за ограничений проекта я не могу использовать Javascript для этой проблемы. очень раздражает я знаю!

Ответы [ 2 ]

2 голосов
/ 12 февраля 2009

Вы можете попробовать обработать одно из событий SelectedIndexChange. При множественном выборе каждый раз, когда запускается это событие, вы можете проверить, сколько элементов уже выбрано. Если это больше, чем вы хотите, пусть обработчик отменит выбор только что выбранного. Вы также можете поставить маленькую красную метку под списком со словами: «Извините, выбор не более [n]».

EDIT: Просто заметил, что вы сказали WEB. Та же теория применима, но это должно быть сделано с использованием Javascript.

0 голосов
/ 12 февраля 2009

В событии SelectedIndexChanged напишите короткий фрагмент кода, который проверит количество выбранных элементов, и, если оно превышает желаемое количество, отмените выбор нового (или отмените выбор самого старого, либо как хотите, чтобы это работало). ).

...