Консультация № 178416
15.05.2010, 20:31
0.00 руб.
0 1 1
Уважаемые эксперты подскажите в следующем
Можно ли без цикла, и как одной строкой данные из коллекции загнать
в комбо или лист бокс.
Если нельзя, а насколько я знаю массив можно загнать без цикла, тогда
можно ли без цикла загнать из коллекции данные в массив, чтобы отттуда их загнать в
комбо или лист бокс.
Эндрю

Обсуждение

Неизвестный
15.05.2010, 22:32
общий
это ответ
Здравствуйте, Ципихович Эндрю.
Как в ComboBox, так и в ListBox нельзя добавить коллекцию одним оператором "List" либо "Column". Они оба представляют из себя массивы, содержащие элементы списка. Collection - это динамический класс, который может содержать в себе элементы различного типа, и как любой класс он представляет собой обычный тип данных, а не массив. Массиву нельзя присвоить коллекцию с помощью оператора присваивания (=). Это можно сделать либо с помощью цикла, либо с помощью оператора Array(), которому в качестве агрументов передать все элементы коллекции вручную:
Код:
 ListBox1.List = Array(myCollection(1), myCollection(2), myCollection(3).... и так далее все элементы) 
Т.е. если количество элементов коллекции очень большое, то придется писать очень длинную строчку, а если оно изменится, то мы либо получим ошибку - при уменьшении количества, либо не все элементы попадут в список - при увеличении.
5
Форма ответа