Обработка событий в C#

программирование C# .net c sharp eventhandler

Есть форма Form1
на форме Textbox1
При textBox1_TextChanged
Делаю наполнение AutoCompleteStringCollection

Проблема в том, что при выскакивании подсказок требуется стрелками перейти на нужный вариант, но во время прохода по вариантам происходит подмена основного текста на текст варианта, что вызывает событие и как следствие обновление списка подсказок. В результате в поле остается то значение, которое было первым в списке. Сформировать список автозаполнения вначале не могу, так варианты разные в зависимости от набираемого текста.

Мне надо, что оставалась возможность перехода стрелками по вариантам без обновления.

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

Другая мысль была, что при нажатии стрелки вниз/вверх не вызывать функцию обновления, но придумать как это сделать не смог.

Примечание:
UDP1: А нельзя ли пример кода

Примечание:
Пробовал вставлять внутрь обработчика textchanged обработчик keydown, но при открытом списке подсказок сначала срабатывает, при нажатии стрелки вниз, сдвиг по подсказкам и только при остутствии открытого списка подсказок, обработчик keydown.
В общем замучился уже. Прошу помощи

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


13 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.