Is it possible to Embed Gecko or Webkit in a Windows Form just like a WebView?

93,834

Solution 1

http://code.google.com/p/geckofx/

This is a nice .NET-wrapped version of Gecko

Solution 2

It certainly is possible. All you need to do is register the Mozilla ActiveX control (mozctlx.dll I believe), and you can drag it onto your form as any ActiveX control. The programming interface is similar (though not identical) to the IE one, and you can even use the Microsoft.MSHTML.dll managed library for control in some cases.

I believe this is packaged with Firefox. If not, you can get just the embeddable bits from Mozilla as well. Just do a Google search for Mozilla ActiveX control or Mozilla Embedding C# and that should take you down the right path.

Solution 3

GeckoFX is no longer being updated. The alternative is the MozNet XulRunner wrapper by Se7en Soft. MozNet has a ton of features that GeckoFX doesn't and is being actively updated and maintained.

Solution 4

I'd just like to point out, to all looking to embed Gecko into their applications, that the GeckoFX project appears to have been abandoned by its creators (Skybound Software). MozNET, while previously based on GeckoFX, sorta' picked up the ball and ran with it. It has the full ability to print, do print previews and allows you to set it all up via the native Windows print dialog, even - and a whole lot more.

Solution 5

Update 2016:

BrowseEmAll.Gecko

A .Net component which can be used to integrate the Firefox engine into your .Net application. This is based on Geckofx but unlike the current version of Geckofx this will work with a normal release build of Firefox. To use Geckofx you will need to build Firefox yourself. Again commercial support is available but the component itself is fully open source.

(Full disclosure: I work for this company so take everything I say with a grain of salt)

Share:
93,834
Martin Marconcini
Author by

Martin Marconcini

Android developer (Kotlin/Java) and some Flutter (newbie). Did iOS (Swift) for a while, not really up to date with the latest Swift. I'm very interested in doing Rust, but I haven't found a chance to properly learn it and nobody will pay me to do it so... here we are :) I haven't done Objective-C since before ARC. I haven't done C#.NET since .NET 3.5 in 2011. I occasionally use Windows for gaming. I mainly use Linux for everything else (and macOS when I have no choice, which is sometimes the case in some corporate environments). Note to Recruiters: Please don't make me offers that are not 100% remote friendly; I've been working from home since 2001 and I expect to continue to do so, pandemic or not. Coming to an office every now and then or once a week is fine, but it should not be the norm; as a developer, the distractions are too many. I disagree with StackOverflow discontinuing JOBS/Developer Story, so I may not be as active as before on this site.

Updated on July 05, 2022

Comments

  • Martin Marconcini
    Martin Marconcini almost 2 years

    I'd love to know if there is such a thing as a Gecko.NET ;) I mean, just like we can embed a WebView and that is an "instance" of IE7 inside any Windows Forms application (and tell it to navigateto(fancy_url);). I'd love to use Firefox or WebKit.

    Anybody tried this?

    UPDATE: Please bear in mind that although it is possible to embed Gecko using the mentioned controls, it is still impossible to print while using Gecko.

    UPDATE March 2010: It’s still not possible to print natively using GeckoFX, however a couple of methods exist that may be enough, depending upon what you’re trying to do. See: http://geckofx.org/viewtopic.php?id=796 for more information.

    UPDATE October 2013: I am no longer doing Windows development so I have no interest in this, but seems like the development of Gecko can be found here: https://bitbucket.org/geckofx and it seems to be recently updated. Leaving this here for future Windows devs ;)

    UPDATE January 2017: I have gotten an email from a company called TeamDev. They created a Chromium-based .NET browser component called "DotNetBrowser" which can be used to display modern web pages in Windows Forms applications.

    To quote the email directly:

    Here are some details about the component, which might be helpful:

    1. DotNetBrowser is based on Chromium, thus supporting HTML5, CSS3, JS and the latest web standards. The underlying Chromium version of the library is regularly updated.
    2. The component is suitable for WPF as well as Windows Forms desktop applications, and works both for C# and VB.NET.
    3. The library is licensed commercially, however free licences are provided for Open Source and academic projects.

    Disclaimer: I have not used this DotNetBrowser for I no longer do Windows Development but may be worth checking if you're looking for a solution to this.

  • Sire
    Sire over 14 years
    The answer below should be the answer. GeckoFX is an updated .NET wrapper, the ActiveX control has not been updated since 2005.
  • Ege Özcan
    Ege Özcan over 12 years
    MozNet's EULA contradicts LGPL, making it illegal. Don't use it.
  • thebretness
    thebretness about 12 years
    By far the best WebBrowser Control for non-IE needs for .Net
  • LairdPleng
    LairdPleng about 11 years
    worse than that, there is now no longer a free demo. It's unlikely one is going to purchase an alternative to an IE plugin component they can verify that it's capable of performing whatever task you weren't able to accomplish with the IE component
  • Przemysław Michalski
    Przemysław Michalski almost 11 years
    Active developed project of GeckoFX is available at: bitbucket.org/geckofx
  • Przemysław Michalski
    Przemysław Michalski almost 11 years
    Active developed vesrion of GeckoFX is available at: bitbucket.org/geckofx
  • tmighty
    tmighty almost 11 years
    OpenWebkitSharp was disabandoned and is therefore useless. Existing errors are not fixed anymore and one can not live with them.
  • Admin
    Admin over 10 years
    I want to transfer winform data to Firefox browser. It can be possible through OpenWebKitSharp class Library also can it works for FF 26.0 version
  • Wayne
    Wayne about 9 years
    GeckoFX is being actively developed at: bitbucket
  • Tony_Henrich
    Tony_Henrich almost 7 years
    MozNet is not longer supported by the author.
  • Tony_Henrich
    Tony_Henrich almost 7 years
    MozNet is not longer supported by the author.
  • komodosp
    komodosp over 3 years
    Possibly a stupid question, but does a particular version of Firefox have to be installed on the end-user's machine?