¿Existe un componente Webkit incorporable para el desarrollo de Windows / C #?
Pregunta
He visto algunos controles COM que envuelven el motor de renderizado Gecko ( GeckoFX , así como el control enviado por Mozilla - mozctlx.dll ). ¿Hay un contenedor para Webkit que se pueda incluir en una aplicación .NET Winform?
Solución
Hay un componente WebKit-Sharp en Repositorio GitHub de Mono . No puedo encontrar ninguna documentación visible en la web, y ni siquiera estoy seguro de si es WinForms o GTK # (no puedo obtener la fuente desde aquí para verificarlo en este momento), pero probablemente sea su mejor opción, tampoco. manera.
Otros consejos
Acabo de lanzar una versión pre-alpha de CefSharp mis enlaces .Net para Chrome Chedded Framework .
Compruébalo y coméntame tu opinión: https://github.com/chillitom/CefSharp (bibliotecas binarias y ejemplos disponibles en la página de descargas)
actualización : Lanzada una nueva versión, incluye la capacidad de enlazar objetos C # en el DOM y más.
actualización 2 : ya no es alpha, lib se usa en proyectos del mundo real, como Facebook Messenger para Windows, el cliente de Windows de Rdio y Github para Windows
No lo he intentado todavía, pero he encontrado WebKit.NET en SourceForge. Se movió a GitHub .
Advertencia: ya no se mantiene, las últimas confirmaciones son de principios de 2013
Berkelium es una herramienta de C ++ para hacer que Chrome se pueda insertar.
AwesomiumDotNet es un envoltorio alrededor de Berkelium y Awesomium
Por cierto, el enlace aquí a Awesomium parece ser más actual.
Hay un componente WebKit-Sharp en el servidor Subversion de Mono. No puedo encontrar ninguna documentación visible en la web, y ni siquiera estoy seguro de si es WinForms o GTK # (no puedo obtener la fuente desde aquí para verificarlo en este momento), pero probablemente sea su mejor opción, tampoco. manera.
Creo que este componente es un contenedor CLI alrededor del webkit para Ubuntu. Por lo tanto, es probable que esta envoltura no esté funcionando en win32
Prueba otra variante: proyecto awesomium - envoltorio alrededor del proyecto de google " Chromium " que utilizan webkit. Además, awesomium tiene características como las páginas web interactivas en objetos 3D bajo WPF
Existe OpenWebKitSharp, una bifurcación de WebKit.NET 0.5 y muy avanzada. Detalles: http://code.google.com/p/open-webkit-sharp/
Pude hacerlo usando CefSharp (que usa navegador de cromo ).
Aquí hay un par de publicaciones que muestran esto en acción:
La versión para Windows de Qt 4 incluye tanto WebKit como clases para crear componentes ActiveX. Probablemente no sea una solución ideal si aún no está usando Qt.
Eche un vistazo a la biblioteca DotNetBrowser . Proporciona controles de navegador WPF y WinForms basados ??en Chromium, que son bastante fáciles de incrustar en la aplicación .NET. Es compatible con todos los estándares web modernos, incluyendo HTML5, CSS3 y JavaScript. La página renderizada se ve exactamente como en Google Chrome.
La biblioteca hereda la arquitectura de procesos múltiples de Chromium & # 8211; cada página web se procesa en un proceso de Chromium independiente, y la aplicación continuará funcionando incluso después de que se bloquee el complemento o se produzca cualquier otro error inesperado en la página web.
Aquí hay algunas otras funciones útiles proporcionadas por DotNetBrowser: es posible escuchar eventos de carga, controlar la actividad de la red, configurar proxy, simular acciones de usuarios, trabajar con cookies, acceder y modificar DOM, escuchar eventos DOM, llamar a JavaScript desde .NET y viceversa, use la cámara web y el micrófono en la página web, configure la comunicación basada en WebRTC y más .
Consulte la Referencia de API para obtener más detalles.
El siguiente fragmento de código muestra cómo crear un BrowserView, insertarlo en un formulario y cargar una URL:
using System.Windows.Forms;
using DotNetBrowser;
using DotNetBrowser.WinForms;
namespace WinForms.DotNetBrowser
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
BrowserView browserView = new WinFormsBrowserView();
Controls.Add((Control) browserView);
browserView.Browser.LoadURL("http://www.youtube.com");
}
}
}
Una vez que ejecute el ejemplo anterior, obtendrá el siguiente resultado:
La biblioteca es comercial. Las licencias comerciales incluyen paquetes de soporte para diferentes tamaños de equipos. También es posible comprar el código fuente de la biblioteca.
Además de su propia página, el componente está disponible como paquete NuGet y como paquete VSIX en Visual Studio Marketplace.
No creo que exista uno actual, pero hay un proyecto [apenas documentado] en Google Code con una versión anterior ...
intente este http://code.google.com/p/geckofx/ espero que no sea tonto o este creo que es mejor http://webkitdotnet.sourceforge.net/