это происходит потому, что при добавлении элементов в комбинированный список при запуске он автоматически выбирает первый в списке в качестве значения для отображения (поведение по умолчанию в комбинированном списке).Этот выбор по умолчанию первого элемента вызывает запуск обработчика selectedindexchange и выполнение вашей подпрограммы.
Что вам нужно сделать, это посмотреть на использование addhandler и removehandler.
Например:
ваша подпрограмма с измененным индексом в комбобоксе называется «indexagedroutine», а ваш комбобокс называется «mycombobox».
При запуске:
addhandler mycombobox.selectedindexchanged, addressof indexchangedroutine
адресом части является имя подпрограммы, которую выхочу вызывать при возникновении события этого элемента управления.
Чтобы предотвратить запуск подпрограммы при запуске, необходимо сначала заполнить элементы комбинированного списка и второй обработчик вызова, чтобы связать событие и логику.
В событииесли вам необходимо выполнить обновление (например, таймер обновления), вы можете вызвать removehandler вместо addhandler, и это разъединит связь между логикой и событием элемента управления.Вы можете сделать свое обновление, и когда вы закончите, addhandler может быть вызван еще раз, чтобы связать их обратно для использования.
Надеюсь, это вам поможет.Может показаться, что здесь задействовано больше кода, но этот метод избегает использования хакерских исправлений, таких как флаги «здесь», в вашей подпрограмме selectedindexchange.