【问题标题】:ActiveX Control will not resize or moveActiveX 控件不会调整大小或移动
【发布时间】:2014-11-05 02:38:13
【问题描述】:

我正在开发一个运行检测的 C# 应用程序。我想包括制造商提供的一些 ActiveX 控件。我已经安装并注册了这些控件,并将它们添加到我在 Visual Studio 中的工具箱中。当我将控件添加到我的表单时,它被强制到左上角(0,0)和大小(0,0)。如果我尝试在属性菜单中调整大小或移动控件,它会返回到 (0,0)。当我将控件添加到我的工具箱时,它最终会出现在我的“常规”类别中。

我也尝试过以编程方式设置大小。如果我设置了最小或最大尺寸,我可以从控件中检索非零尺寸,但我不会在我的表单中看到该控件。该控件很旧,并且可以在XP虚拟桌面的VB6中使用。对此的任何帮助将不胜感激。

【问题讨论】:

  • 也许您可以将其添加到WebBrowser 控件中,例如使用<object classid="clsid:THE_ACTIVE_X_GUID"> 语法。不确定它是否会有所帮助...

标签: c# visual-studio-2012 com activex


【解决方案1】:

根据 Sjips 的建议,我使用表单中的 WebBrowser 控件打开了 ActiveX 控件。使用 HTML 代码:

<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">

<head>
  <meta charset="utf-8" />
  <title></title>
</head>

<body>
  <center>
    MVC Diplay
    <p></p>
    <div id="DivId">
      <script>
        var mvc = document.createElement('object');
        DivId.appendChild(mvc);
        mvc.width = "800";
        mvc.height = "500";
        mvc.classid = "CLSID:78559301-09D8-11D2-85D3-204C4F4F5020";
      </script>
    </div>
  </center>

</body>

</html>

还需要在“构建后事件命令行”中添加以下内容:

call "$(DevEnvDir)..\tools\vsvars32.bat"

editbin.exe /NXCOMPAT:NO "$(TargetPath)"

我还必须将构建目标设置为 x86。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-12-04
    • 2017-04-27
    • 1970-01-01
    • 1970-01-01
    • 2018-07-26
    • 1970-01-01
    • 2014-10-31
    • 1970-01-01
    相关资源
    最近更新 更多