проблема окна комбинированного окна? - PullRequest
1 голос
/ 06 октября 2010

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

dropdownstyle = dropdown
autocompletesource = Listitem
autocompletemode = предлагаемое добавление.

Теперь моя проблема в том, что я хотел бы ограничитьПользователь вводит только те значения, которые есть в поле со списком.например, если в поле со списком есть 3 элемента: яблоко, манго и виноград

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

спасибо, ребята, за время.
Виджай Шияни

Ответы [ 3 ]

4 голосов
/ 06 октября 2010

Один из способов - подтвердить выбор, проверив, является ли поле SelectedIndex в поле со списком чем-либо, кроме -1.Если это так, то они набрали или выбрали элемент из списка.Вы также можете сделать то же самое, проверив, если SelectedItem ! = Null.

например.

if (comboBox.SelectedIndex != -1)
{
   // Item from list selected
}
else
{
   // Error: please selecte an item from the list
}

Другой способ избежать проверки - установить ComboBoxStyle to DropDownList, который по-прежнему позволяет им печатать, но позволяет им только печатать или выбирать элемент из списка.

3 голосов
/ 06 октября 2010

Измените DropDownStyle на DropDownList вместо DropDown

combobox.DropDownStyle = ComboBoxStyle.DropDownList;

или измените его на странице свойств VS

0 голосов
/ 06 октября 2010

Поместите этот код в Проверка события ComboBox:

var cbo = (ComboBox)sender;
if (cbo.SelectedIndex == -1)
{
    e.Cancel = true;
}

ПРИМЕЧАНИЕ: Если для параметра Cancel выбрано значение true, пользователь не сможет покинуть проверочный элемент управления. Используйте с особой осторожностью.

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