Existe-t-il un composant WebKit intégrable pour le développement de Windows / C#?

j'ai vu quelques commandes COM qui enveloppent le moteur de rendu Gecko ( GeckoFX , ainsi que le contrôle livré par Mozilla - mozctlx.dll ). Y a-t-il un wrapper pour Webkit qui peut être inclus dans une application Winform. net?

72
demandé sur Community 2008-09-27 01:47:57

11 réponses

il y a un composant WebKit-Sharp sur Mono's GitHub Repository . Je ne peux pas trouver de documentation consultable sur le web, et je ne suis même pas sûr si C'est WinForms ou GTK# (Je ne peux pas prendre la source d'ici pour vérifier pour le moment), mais c'est probablement votre meilleur pari, de toute façon.

18
répondu Alex Lyman 2012-07-06 19:49:45

je viens de sortir une version pré-alpha de CefSharp my .Net fixations pour le Chromium Embedded Framework .

Check it out et de me donner vos pensées: https://github.com/chillitom/CefSharp (libs binaires et Exemple disponible dans la page Téléchargements)

mise à jour : Publié une nouvelle version, comprend la capacité de liez les objets C# dans le DOM et plus encore.

update 2 : aucun-plus d'alpha, lib est utilisé dans le monde réel les projets, y compris de Facebook Messenger pour Windows, Rdio du client Windows et Github pour Windows

39
répondu chillitom 2012-11-17 09:54:26

N'ont pas encore essayé mais trouvé WebKit.NET sur SourceForge. Il a été déplacé à GitHub .

Avertissement: il N'est plus maintenu, les derniers commits sont à partir de début 2013

38
répondu Petr Havlicek 2015-11-26 05:56:51

Berkelium est un outil C++ pour rendre Chrome embeddable.

AwesomiumDotNet est une enveloppe autour à la fois Berkelium et Awesomium

BTW, le lien ici à Awesomium semble être plus actuel.

12
répondu Kevin Driedger 2010-04-09 21:24:40

il y a un composant WebKit-Sharp sur le serveur Subversion de Mono. Je ne peux pas trouver de documentation consultable sur le web, et je ne suis même pas sûr si C'est WinForms ou GTK# (Je ne peux pas prendre la source d'ici pour vérifier pour le moment), mais c'est probablement votre meilleur pari, de toute façon.

je pense que ce composant est Clipper wrapper autour de webkit pour Ubuntu. Donc cet emballage ne pourrait probablement pas fonctionner sur win32

une autre variante-projet awesomium - envelopper autour de google project " Chrome " qui utilisent webkit. Aussi awesomium a des traits comme si interavtive des pages web sur des objets 3D sous WPF

7
répondu Regfor 2009-08-28 13:59:08

il y a OpenWebKitSharp, une fourche de WebKit.NET 0.5 et très avancé. Détail: http://code.google.com/p/open-webkit-sharp/

6
répondu George 2011-09-11 15:11:02

la version Windows de Qt 4 inclut WebKit et des classes pour créer des composants ActiveX. Ce n'est probablement pas une solution idéale si vous n'utilisez pas déjà Qt.

2
répondu Andy Brice 2008-09-30 13:18:08

regardez la bibliothèque DotNetBrowser . Il fournit des commandes de navigateur WPF et WinForms à base de Chrome, qui sont assez faciles à intégrer dans L'application .NET. Il prend en charge toutes les normes modernes de web, y compris HTML5, CSS3 et JavaScript. La page rendue ressemble exactement à celle de Google Chrome.

la bibliothèque hérite de L'architecture multi-processus de Chromium – chaque page web est rendue dans un processus de Chrome séparé, et l'application continuera de fonctionner même après le crash du plugin ou toute autre erreur inattendue se produit sur la page web.

voici quelques autres fonctionnalités utiles, fournies par DotNetBrowser: il est possible d'écouter les événements de chargement, gérer l'activité du réseau, Configurer le proxy, simuler les actions de l'utilisateur, travailler avec des cookies, accéder et modifier le DOM, écouter les événements DOM, appeler JavaScript à partir de .NET et vice versa, utiliser la caméra web et le microphone sur la page web, configurer la communication basée sur WebRTC, et plus .

consultez le référence API pour plus de détails.

l'extrait de code ci-dessous montre comment créer un BrowserView, l'intégrer dans un formulaire, et charger une 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");
        }
    }
}

une fois que vous aurez exécuté l'exemple ci-dessus, vous obtiendrez la sortie suivante:

enter image description here

la Bibliothèque est commercial, cependant il est gratuit pour l'utilisation dans les projets Open-Source et universitaires. Les licences commerciales comprennent des paquets de soutien pour différentes tailles d'équipe. Il est également possible d'acheter le code source de la bibliothèque.

outre sa propre page, le composant est disponible en tant que NuGet package et en tant que VSIX package sur le marché de Visual Studio.

2
répondu Vladimir 2017-01-03 09:25:23

Je ne pense pas qu'il y en ait un courant là-bas, mais il y a un projet [à peine documenté] sur Google Code avec une version plus ancienne...

1
répondu swilliams 2008-09-26 21:52:04

essayez celui-ci http://code.google.com/p/geckofx / espérons qu'il n'est pas dupe ou ce que je pense c'est mieux http://webkitdotnet.sourceforge.net /

1
répondu UnLoCo 2011-07-22 15:33:00