обрабатывать события родительского элемента управления в элементе управления C # ActiveX - PullRequest
1 голос
/ 23 февраля 2010

Я написал пользовательский элемент управления ActiveX на C #. Этот элемент управления ActiveX размещается в устаревшем приложении, запущенном в IE, написанном на Delphi. Все работает, моя единственная проблема заключается в том, что мне нужно подписаться на события элемента управления, который размещает меня (например, изменить размер события).

В настоящее время я не могу этого сделать, и когда я изменяю размер окна IE, мой элемент управления не получает событие SizeChanged. Я попытался подписаться на события родительского элемента управления, но родительский элемент управления указан как нулевой (я думаю, это проблема Delphi)

Я хочу знать, есть ли способ заставить это работать (какой-то интерфейс, который я должен реализовать, может быть?)

вот пример кода моего управления:

    [
        ClassInterface(ClassInterfaceType.AutoDispatch),
        ComVisible(true),
        Guid("<some guid>"),
    ]
    public partial class MyActiveXControl : UserControl, IMyInterface
    {

        public MyActiveXControl()
        {
            InitializeComponent();
        }

        #region IScriptViewer Members

        //implement interface

        #endregion

    }

Спасибо!

1 Ответ

0 голосов
/ 24 февраля 2010

Как насчет управления размером элемента на вашей веб-странице. Например, получите размер окна браузера / changes, а затем установите границы элемента управления вручную. И если вы хотите, чтобы элементы управления внутри элемента управления переупорядочили их, то, вероятно, вызовите событие OnSize элемента управления.

...