Задача: динамически создать ActiveX контрол на форме при загрузке (VB.Net)
Беру свой старый добрый ActiveX контрол, цепляю к оболочке. Оболочка честно генерит для контрола враппер через AxHost. На событии Form_Load присваиваю переменной новую инстанцию контрола и добавляю переменную в коллекцию Form.Contols.
Если ничего дальше не делать (работая только с наследными от AxHost пропертями — размер, положение), то контрол нормально появляется на форме. Но нафиг мне он пустой нужен? Правильно, пытаюсь вызвать свойства или методы (не наследные) этого контрола. На любой вызов получаю исключение AxHost.InvalidActiveXStateException, т.е. якобы объект находится в непонятном состоянии. Если необходимые мне вызовы повесить на кнопку (т.е. вызвать после отработки/возврата из Form_Load), то контрол совершенно чудно работает.
Способа "активировать" или перевести в другое "состояние" созданный элемент я не нашел. Попытки вызывать метод AxHost.CreateControl (который якобы принудительно создает контрол) тоже результата не дают.
Что тут можно еще придумать?
23.12.03 18:12: Перенесено модератором из '.NET' — AVK