none
用.net 4.0创建的WinForm用户控件不能在IE中运行 RRS feed

  • 问题

  • 如题,创建一个最简单的Winform用户控件(比如拖一个文本框到界面上),在.net 3.5能正常在IE中运行,在.net 4.0无法正常运行。

    • 已移动 ThankfulHeart 2012年11月11日 1:02 ASP.NET相关问题 (发件人:.NET Framework 一般性问题讨论区)
    2012年11月9日 9:38

答案

全部回复

  • 如题,创建一个最简单的Winform用户控件(比如拖一个文本框到界面上),在.net 3.5能正常在IE中运行,在.net 4.0无法正常运行。

    你一会儿WinForm一会儿IE运行?究竟是在何处运行?你想把WinForm的用到asp.net中?


    我的博客园
    慈善点击,点击此处
    和谐拯救危机,全集下载,净化人心

    2012年11月10日 3:21
  • 就是创建一个类库项目如test,其中包含MainView这个用户控件,并且在项目的AssemblyInfo.cs文件中添加了[assembly: System.Security.AllowPartiallyTrustedCallers()],同时在项目属性中把“为Com互操作注册”和“使程序集Com可见”都勾选上。

    然后创建一个htm网页,将编译好的dll文件放到该网页目录下,网页代码如下:

    <html>

    <head></head>

    <body>

    <object id="test" classId="test.dll#test.MainView" width="100" height="80">

    </object>

    </body>

    </html>

    IE也设置了可以运行ActiveX控件,结果是基于.net 3.5的程序可以正常运行,基于.net 4.0的就不行。


    • 已编辑 fzuccq 2012年11月10日 15:21
    2012年11月10日 15:19
  • 这个功能已经从Windows Forms 4.0中被移除。


    Visual C++ MVP

    • 已标记为答案 fzuccq 2012年11月11日 3:50
    2012年11月11日 2:02
    版主
  • 这样啊!谢谢解答!
    2012年11月11日 3:49