Я создаю большую форму ввода данных и хочу включить или отключить группы полей со списком на основе флажка (если флажок установлен, набор полей со списком будет включен для ввода пользователем и наоборот). Я хочу использовать коллекцию, потому что поля со списком не всегда будут располагаться в последовательном порядке (пример: поля со списком 1-7, затем поле со списком 12, затем 16 и 45-57). Коллекция кажется идеальной.
Я создал коллекции, добавил поля со списком и добавил элементы в поля со списком. Все элементы находятся в выпадающих списках, когда я запускаю приложение. Я могу включить или отключить их по отдельности, но я не могу включить / отключить поля со списком как коллекцию .. как я могу включить или отключить их как группу?
Я могу заставить это работать, если я выберу все поля со списком в моей форме, а затем запустить сквозной список, сопоставляя имена с переменной (например, для полей 1–56), но это делает использование коллекции излишним. Я также собираюсь вывести данные в группах сбора для дальнейшего использования.
Я бился головой о стену в течение дня или около того ..
Объявить коллекцию
Dim CablesCollectionBoxes As New Collection
Добавить поля со списком в коллекцию
CablesCollectionBoxes.Add(ComboBox1)
CablesCollectionBoxes.Add(ComboBox2)
CablesCollectionBoxes.Add(ComboBox3)
.
<removed for space and readability>
.
CablesCollectionBoxes.Add(ComboBox56)
Я пытаюсь изменить коллекцию элементов со списком до отключенного состояния, но приведенный ниже код не работает.
for I as integer = 1 to 56
CablesCollectionBoxes.Item(i) = Disabled
next
Он ДЕЙСТВИТЕЛЬНО работает, если я использую это, но я не использую коллекцию, я использую ВСЕ поля со списком и совпадающие имена:
For i As Integer = 1 To 56
Dim clsCombo As ComboBox = DirectCast(Me.Controls.Find("ComboBox" & i.ToString(), True)(0), ComboBox)
clsCombo.Enabled = True
Next
или это
ComboBox1.Enabled = True
ComboBox2.Enabled = True
ComboBox3.Enabled = True
ComboBox4.Enabled = True
.
<removed for space and readability>
.
ComboBox56.Enabled = True
Как мне получить доступ к комбинированным спискам как к группе и изменить свойства? Я неправильно объявил коллекцию?