【问题标题】:Is there any better web browser control in C# (.NET)?C# (.NET) 中是否有更好的 Web 浏览器控件?
【发布时间】:2010-10-16 18:04:08
【问题描述】:

我需要 JavaScript 在我的应用程序中几乎完美地工作,它应该能够访问 Web 内容并让用户对其进行控制。但是,webbrowser 组件会在 Internet Explorer 的单独实例/应用程序中弹出新窗口,并且 dotBrowser 无法正常使用 JavaScript。

请给我一些建议 - 我什至会举一些可行的例子,并用我需要的功能来增强它。

【问题讨论】:

    标签: c# .net asp.net javascript


    【解决方案1】:

    我可能弄错了,但我相信可以使用 .NET 中的 Web 浏览器控件来控制(或至少抑制)新窗口。看看 NewWindow 事件。

    我曾在 .NET winforms 应用程序中嵌入 WebKit(Apple Core,用于 Chrome)和 XULRunner (Gecko) 核心。让我给你一些建议:

    GeckoFX 是您的最佳选择。它在 MPL 下获得许可,并且开箱即用。 仔细按照说明操作并拉出指示的确切 XUL 版本。我会说它比 WebBrowser 控件工作得更好。有人说第一次加载 XUL 时会有明显的延迟,但我发现它可以忽略不计。品牌等可通过外部文件完全自定义。

    WebKit 可嵌入 SwiftDotNet。如果您只需要可靠的 javascript 性能,那么这可能是一个选择。如果您需要能够下载文件,那么您需要完成一些工作。

    这两条路线的缺点是令人讨厌的 ~7-8mb 开销,即使使用压缩也是如此(尽管我能够在 NSIS 中使用 lz 压缩获得 6.5mb)。如果您没有创建面向消费者的可分发软件,那么这对您来说可能不是问题。

    【讨论】:

      【解决方案2】:

      看看GeckoFX,它是用于将 Mozilla Gecko (Firefox) 嵌入 .NET 应用程序的开源组件。

      【讨论】:

      • Gecko +1,我正在用 C# 编写一个应用程序,我能够在 5 分钟内启动并运行它。只需按照博客中的说明进行操作即可。
      猜你喜欢
      • 2017-03-07
      • 1970-01-01
      • 1970-01-01
      • 2016-01-30
      • 2010-12-27
      • 2013-08-06
      • 1970-01-01
      • 2015-12-04
      • 2010-09-08
      相关资源
      最近更新 更多