В коде функции public Form1() после инициализации компонентов InitializeComponent() инициализируем новый экземпляр класса System.Windows.Forms.AutoCompleteStringCollection для того чтобы мы могли задать фрагменты теста которые будут предлагаться пользователю по мере совпадения с вводимым текстом. В приведенном ниже коде мы создадим коллекцию из названий месяцев:
var source = new AutoCompleteStringCollection();
source.AddRange(new string[]
{
"January",
"February",
"March",
"April",
"May",
"June",
"July",
"August",
"September",
"October",
"November",
"December"
});
Дальше мы будем работать со свойствами AutoCompleteCustomSource, AutoCompleteMode и AutoCompleteSource нашего компонента. Эти свойства используются для автоматического заполнения входных строк путем сравнения вводимых префиксов с префиксами всех строк в поддерживаемом источнике, который мы создали выше.
Теперь по порядку:
Указываем свойству AutoCompleteCustomSource нашего компонента коллекцию source:
textBox1.AutoCompleteCustomSource = source;
Чтобы компонент при вводе текста обращался к коллекции, в свойстве AutoCompleteSource задаем значение AutoCompleteSource.CustomSource, указывающее источник полных строк, используемых для автоматического заполнения.
textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
Теперь нам остается только задать режим для возможности автоматического завершения, есть четыре режима:
- None — Отключает возможность автоматического завершения в элементах управления ComboBox и TextBox.
- Suggest — Выводит вспомогательный раскрывающийся список, сопоставленный элементу управления, в котором выполняется правка. Этот список содержит одну или несколько предложенных строк завершения.
- Append — Добавляет остаток строки с наибольшей вероятностью совпадения в существующие знаки с выделением добавленных знаков.
- SuggestAppend — Применяет как параметр Suggest, так и параметр Append.
Мы выберем SuggestAppend:
textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
Ну вот и все, смотрите полный пример кода ниже:
public Form1()
{
InitializeComponent();
var source = new AutoCompleteStringCollection();
source.AddRange(new string[]
{
"January",
"February",
"March",
"April",
"May",
"June",
"July",
"August",
"September",
"October",
"November",
"December"
});
textBox1.AutoCompleteCustomSource = source;
textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
}
Скриншот тестовой программы:
Ссылки для скачивания: Rusfolder.net — DepositFiles — Turbobit.net — Letitbit.net
0.00 (0%) 0 votes








