2

我用 C# 编写了一个 ActiveX 用户控件。该 ActiveX 控件托管在使用 Delphi 编写的 IE 中运行的遗留应用程序中。一切正常,我唯一的问题是我需要订阅托管我的控件的事件(例如 - 调整大小事件)。

目前我无法做到这一点,当我调整 IE 窗口的大小时,我的控件没有收到SizeChanged事件。我试图订阅父控件的事件,但父控件被列为空。(我想这是德尔福的问题。)

我想知道是否有办法让它工作(也许我必须实现一些接口?)。

这是我的控件的代码示例:

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

        public MyActiveXControl()
        {
            InitializeComponent();
        }

        #region IScriptViewer Members

        //implement interface

        #endregion

    }
4

1 回答 1

0

您如何处理网页中的控件大小。例如,获取浏览器窗口大小/changes,然后手动设置控制范围。如果您希望控件内的控件重新排列它们,则可能调用控件的 OnSize 事件。

于 2010-02-24T12:44:10.673 回答