Есть ли встраиваемый компонент Webkit для разработки Windows / C#?

Я видел несколько элементов управления COM, которые обертывают движок рендеринга Gecko (GeckoFX, а также контроль, поставляемый Mozilla -mozctlx.dll файлы). Есть ли оболочка для Webkit, которая может быть включена в приложение .NET Winform?

11 ответов


есть компонент webkit-Sharp на репозиторий Github Mono. Я не могу найти никакой веб-просматриваемой документации по нему, и я даже не уверен, что это WinForms или GTK# (не могу захватить источник отсюда, чтобы проверить на данный момент), но это, вероятно, ваш лучший выбор, в любом случае.


Я только что выпустил предварительную альфа-версию CefSharp мой .Net привязки для Chromium Embedded Framework.

проверьте это и дайте мне свои мысли:https://github.com/chillitom/CefSharp (бинарные библиотеки и пример доступны на странице загрузки)

обновление: Выпущена новая версия, включает в себя возможность привязки объектов C# в DOM и многое другое.

обновление 2: больше не альфа, lib используется в реальных проектах, включая Facebook Messenger для Windows, клиент Windows Rdio и Github для Windows


еще не пробовал, но нашел WebKit.NET на SourceForge. Его перенесли в GitHub.

предупреждение: больше не поддерживается, последние коммиты с начала 2013


Беркулисом - это инструмент C++ для встраивания chrome.

AwesomiumDotNet - это оболочка вокруг Беркулисом и Awesomium

кстати, ссылка здесь на Awesomium Кажется более актуальным.


на сервере Subversion Mono есть компонент WebKit-Sharp. Я не могу найти никакой веб-просматриваемой документации по нему, и я даже не уверен, что это WinForms или GTK# (не могу захватить источник отсюда, чтобы проверить на данный момент), но это, вероятно, ваш лучший выбор, в любом случае.

Я думаю, что этот компонент является оболочкой CLI вокруг webkit для Ubuntu. Таким образом, эта оболочка, скорее всего, не может работать на win32

попробуйте проверить другой вариант - проект awesomium - обертка вокруг проекта google"хром " это использование webkit. Также awesomium имеет такие функции, как интерактивные веб-страницы на 3D-объектах под WPF


есть OpenWebKitSharp, вилка WebKit.NET 0.5 и очень продвинутый. Подробности: http://code.google.com/p/open-webkit-sharp/


Я смог сделать это с помощью CefSharp (который использует chromium browser).

вот несколько сообщений, которые показывают это в действии:


версия Qt 4 для Windows включает как WebKit, так и классы для создания компонентов ActiveX. Вероятно,это не идеальное решение, если вы еще не используете Qt.


посмотри DotNetBrowser библиотека. Он предоставляет элементы управления браузером на основе хрома WPF и WinForms, которые довольно легко встроить в приложение .NET. Он поддерживает все современные веб-стандарты, включая HTML5, CSS3 и JavaScript. Визуализированная страница выглядит точно так же, как в Google Chrome.

библиотека наследует многопроцессную архитектуру Chromium – каждая веб-страница отображается в отдельном процессе Chromium, и приложение будет продолжать работать даже после сбоя плагина или любой другой неожиданной ошибки на веб-странице.

вот некоторые другие полезные функции, предоставляемые DotNetBrowser: можно прослушивать события загрузки, обрабатывать сетевую активность, настраивать прокси-сервер, имитировать действия пользователя, работать с куки-файлами, получать доступ и изменять DOM, прослушивать события DOM, вызывать JavaScript из .NET и наоборот, использовать веб-камеру и микрофон на веб-странице, настраивать связь на основе WebRTC и больше.

Проверьте ссылка на API для более подробной информации.

приведенный ниже фрагмент кода демонстрирует, как создать BrowserView, встроить его в форму и загрузить 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");
        }
    }
}

после запуска примера выше вы получите следующий вывод:

enter image description here

библиотека является коммерческой, однако она бесплатна для использования в открытых и академических проектах. Коммерческие лицензии включают пакеты поддержки для разные размеры команды. Также можно приобрести исходный код библиотеки.

помимо собственной страницы компонент доступен как пакета NuGet и пакет VSIX в Visual Studio Marketplace.


Я не думаю, что там есть текущий, но есть [едва документированный] проект на Код Google С более старой версией...


попробуйте этот http://code.google.com/p/geckofx/ надеюсь, это не обман. или этот, я думаю, лучше. http://webkitdotnet.sourceforge.net/