Как изменить значение текстового поля, выбрав предложенное значение? - PullRequest
0 голосов
/ 14 апреля 2020

Я создаю настольное приложение в Visual Studio с C#. У меня есть массив строк с именем Tag_Word_Box. В текстовом поле, если я что-то наберу, будет отображаться подсказка слов из массива Tag_Word_Box.

Вкратце, предположим, что у меня есть 5 слов соответственно [aabc] [abc] [abd] [abcg] [ bcd] Если я наберу в текстовом поле только «a», то все слова будут показаны без «bcd». Если я выберу «aab c» или нажму «ввести одно из предлагаемых слов», тогда - ему будет назначено целое слово в текстовом поле, что означает, что значение текстового поля будет изменено при выборе слова на «a».

BTW Я знаю, что это будет решено алгоритмом tr ie, чтобы найти слова. Но я хочу знать, как выполнить эту операцию в визуальной студии в отношении C#, что -

1. показывать подсказывающие слова, когда я что-то набираю

2. и как мне изменить значение текстового поля, выбрав из них?

Спасибо :)

1 Ответ

0 голосов
/ 15 апреля 2020

Все текстовые поля имеют свойство AutoCompleteSource. Установите значение CustomSource на панели инструментов «Свойства». Затем установите для свойства AutoCompleteMode значение SuggestAppend. Теперь, в коде, добавьте это к событию TextChanged текстового поля:

    var autocomplete = new AutoCompleteStringCollection();
    autocomplete.AddRange(Tag_Word_Box);
    textBoxName.AutoCompleteCustomSource = autocomplete;

Чтобы сделать все это в коде, добавьте это к событию TextChanged вашего текстового поля:

    textBoxName.AutoCompleteSource=AutoCompleteSource.CustomSource;
    textBoxName.AutoCompleteMode=AutoCompleteMode.SuggestAppend;
    var autocomplete = new AutoCompleteStringCollection();
    autocomplete.AddRange(Tag_Word_Box);
    textBoxName.AutoCompleteCustomSource = autocomplete;

Не забудьте заменить textBoxName именем вашего текстового поля перед использованием этого кода.

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