¿Es posible incrustar Gecko o Webkit en Windows Forms como una WebView?

Me encantaría saber si existe algo así como Gecko.NET;) Quiero decir, al igual que podemos integrar un WebView y que es una “instancia” de IE7 dentro de cualquier aplicación de Windows Forms (y decirle que navigateto(fancy_url); ). Me encantaría usar Firefox o WebKit.

¿Alguien intentó esto?

ACTUALIZACIÓN : tenga en cuenta que, si bien es posible incrustar Gecko utilizando los controles mencionados, todavía es imposible imprimir mientras se usa Gecko.

ACTUALIZACIÓN Marzo de 2010 : Todavía no es posible imprimir de forma nativa con GeckoFX, sin embargo, existen algunos métodos que pueden ser suficientes, dependiendo de lo que estés tratando de hacer. Ver: http://geckofx.org/viewtopic.php?id=796 para más información.

ACTUALIZACIÓN Octubre de 2013 : Ya no estoy desarrollando Windows, por lo que no tengo interés en esto, pero parece que el desarrollo de Gecko se puede encontrar aquí: https://bitbucket.org/geckofx y parece que se actualizó recientemente. Dejando esto aquí para futuros desarrolladores de Windows;)

ACTUALIZACIÓN Enero de 2017 : recibí un correo electrónico de una compañía llamada TeamDev . Crearon un componente de navegador .NET basado en Chromium llamado “DotNetBrowser” que se puede usar para mostrar páginas web modernas en las aplicaciones de Windows Forms.

Para citar el correo electrónico directamente:

Aquí hay algunos detalles sobre el componente, que pueden ser útiles:

  1. DotNetBrowser está basado en Chromium, y es compatible con HTML5, CSS3, JS y los últimos estándares web. La versión subyacente de Chromium de la biblioteca se actualiza periódicamente.
  2. El componente es adecuado para WPF, así como para las aplicaciones de escritorio de Windows Forms, y funciona tanto para C # como para VB.NET.
  3. La biblioteca tiene licencia comercial, sin embargo, se otorgan licencias gratuitas para Open Source y proyectos académicos.

Descargo de responsabilidad: No he usado este DotNetBrowser porque ya no desarrollo Windows, pero puede valer la pena verificarlo si está buscando una solución para esto.

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

Esta es una buena versión de Gecko envuelta en .NET

Ciertamente es posible. Todo lo que necesita hacer es registrar el control ActiveX de Mozilla (creo que mozctlx.dll), y puede arrastrarlo a su formulario como cualquier control ActiveX. La interfaz de progtwigción es similar (aunque no idéntica) a la de IE, e incluso puede usar la biblioteca administrada Microsoft.MSHTML.dll para el control en algunos casos.

Creo que esto está empacado con Firefox. Si no, también puedes obtener los bits incrustados de Mozilla. Simplemente haz una búsqueda en Google del control Mozilla ActiveX o Mozilla Embedding C # y eso te llevará por el camino correcto.

GeckoFX ya no se está actualizando. La alternativa es la envoltura MozNet XulRunner de Se7en Soft. MozNet tiene un montón de características que GeckoFX no tiene y está siendo actualizado y mantenido activamente.

Solo me gustaría señalar, a todos los que buscan integrar Gecko en sus aplicaciones, que el proyecto GeckoFX parece haber sido abandonado por sus creadores (Skybound Software). MozNET, mientras que anteriormente estaba basado en GeckoFX, entonces ‘recogió la pelota y corrió con ella. Tiene la capacidad completa de imprimir, imprimir vistas previas y le permite configurarlo todo a través del diálogo de impresión nativo de Windows, incluso, y mucho más .

OpenWebKitSharp es un envoltorio del motor WebKit (todas las noches) y está muy avanzado. Eche un vistazo aquí (sección de OpenWebKitSharp): http://code.google.com/p/open-webkit-sharp/

Actualización 2016:

BrowseEmAll.Gecko

Un componente .Net que se puede usar para integrar el motor Firefox en su aplicación .Net. Esto está basado en Geckofx, pero a diferencia de la versión actual de Geckofx, funcionará con una versión de lanzamiento normal de Firefox. Para usar Geckofx necesitarás construir Firefox tú mismo. De nuevo, el soporte comercial está disponible, pero el componente en sí es completamente de código abierto .

(Divulgación completa: yo trabajo para esta empresa, así que toma todo lo que digo con un grano de sal)

@Martin: Sí, la versión de Adam Locke está desactualizada. Pero eso se debe a que no es necesaria una distribución por separado. Está construido con el rest de la base de código de Mozilla ahora.

Si descarga Prism (es decir, XulRunner), eso le dará una base que puede personalizar según sus necesidades, y esto incluye la versión más reciente del control (en el directorio \ Prism \ xulrunner, encontrará mozctlx.dll) .

@Greg: en realidad, es un control ActiveX. Por cierto, todos los controles ActiveX son controles COM. ActiveX se basa en COM.

A partir del 30 de octubre de 2011, hay nueva información para agregar desde el momento de las publicaciones anteriores. Específicamente, mientras Skybound dejó de mantener su versión, hay disponible al menos un servicio de mantenimiento activo, gratuito y de código abierto.

Estoy usando el tenedor de Hindle en BitBucket, que, en virtud de su herramienta que analiza los idls de XpCom y crea los envoltorios de c #, se actualiza rápidamente con soporte para cada nueva versión de Firefox / Gecko.

Consulte esta publicación para obtener una descripción general de otras opciones.

Además, si se encuentra utilizando Gtk en lugar de Windows.Forms, hay disponible una tarball de webkit-sharp que permite la incorporación sencilla de WebViews en aplicaciones Gtk #.

Creo que “Gecko FX” [1] es lo que necesitas.

Para cotizar desde el sitio web

“” “GeckoFX es un control de Windows Forms escrito en limpio, comentario C # que incorpora el control del navegador Mozilla Gecko en cualquier aplicación de Windows Forms. También contiene un modelo de clase simple que proporciona acceso al DOM HTML y CSS.” “”

1) No puedo publicar un enlace ya que “los nuevos usuarios no pueden agregar hipervínculos” Buscar “geckofx” en el código de google.