2009-10-07 12 views
13

Ich brauche ein Google Chrome-Browser-Steuerelement für vb.net, obwohl es technisch für jede. NET Sprache funktionieren könnte.Google Chrome-Steuerelement für .net

Grund: Ich möchte meinen eigenen Webbrowser erstellen, aber ich möchte meinen eigenen Parser nicht programmieren, daher möchte ich stattdessen Chrome verwenden (und natürlich einen guten Kredit geben).

Ich habe diese gegoogelt, und nicht in der Lage etwas

Vielen Dank für Ihre Hilfe zu finden! Ich brauche nur jemanden, der mich in die richtige Richtung weist.

Im Wesentlichen möchte ich das WebBrowser-Steuerelement, aber anstatt es vom IE zu basieren, möchte ich Chrome verwenden, da ich Chrom zu ie bevorzuge. Ich möchte auch ein bisschen mehr Kontrolle über die Komponente, der Webbrowser ist schrecklich, wenn Sie Ihren eigenen Browser erstellen wollen, und Laggy wie heck.

EDIT: Dies muss für WinForms funktionieren, nicht wpf. Ich denke (persönlich), dass ich meinen Browser in winforms viel einfacher machen kann, aber wenn Sie nur ein wpf-Steuerelement finden, ist das auch in Ordnung.

+1

Es gibt einige Projekt dafür. Ich werde es ausgraben. – spender

+0

Super! Dies muss für winforms btw arbeiten, ich habe gerade festgestellt, dass ich vergessen habe, hinzuzufügen>.> – Cyclone

Antwort

8

Da Chrom WebKit verwendet, würde ich annehmen, so etwas wie dies für Sie arbeiten würde:

http://sourceforge.net/projects/webkitdotnet/

+0

Welche Dateien in der kompilierten müssen verwendet werden, und welche sind nur für die Demo? – Cyclone

+0

Ich habe das nicht persönlich benutzt, aber ich stelle mir vor, das Tutorial wäre ein sehr guter Start: http://webkitdotnet.sourceforge.net/using.php –

+0

Sieht einfach aus, krank geben Sie eine Chance! – Cyclone

9

Sieht aus wie this guy hat alles herausgefunden.

EDIT:

Er hat es mit WPF getan, so dass es dann ein wenig anders für WinForms sein. Sieht aus wie das echte Gold ist Awesomium.

+0

Seine wpf, aber Ill sehen, ob ich es in WinForms arbeiten kann. Sieht gut aus! – Cyclone

+1

awesomium ist toll – Vin

1

Chrome nutzt Webkit für das Rendering, aber die JavaScript-Engine verwendet es ist völlig anders.

0

this one Versuchen. Es ist speziell für .NET konzipiert und basiert auf dem neuesten Google Chrome, nicht nur auf WebKit (Google Chrome hat eine schnellere JavaScript-Engine). Es ist auch sehr einfach zu benutzen, weil Sie eine einzelne .NET-DLL haben und das war's.

3

Werfen Sie einen Blick auf die DotNetBrowser Bibliothek. Es bietet Chrom-basierte WPF- und WinForms-Browsersteuerelemente, die sehr einfach in .NET-Anwendungen eingebettet werden können. Es unterstützt alle modernen Web-Standards wie HTML5, CSS3 und JavaScript. Die gerenderte Seite sieht genau wie in Google Chrome aus.

Die Bibliothek erbt die Multi-Prozess-Architektur von Chromium - jede Webseite wird in einem separaten Chromium-Prozess gerendert und die Anwendung funktioniert auch nach dem Absturz des Plugins oder einem anderen unerwarteten Fehler auf der Webseite.

Hier sind einige andere nützliche Funktionen von DotNetBrowser: es ist möglich, Ereignisse zu laden, Netzwerkaktivität zu verwalten, Proxy zu konfigurieren, Benutzeraktionen zu simulieren, mit Cookies zu arbeiten, auf DOM zuzugreifen und sie zu ändern, DOM-Ereignisse anzuhören JavaScript von .NET und umgekehrt, Webkamera und Mikrofon auf der Webseite verwenden, WebRTC-basierte Kommunikation einrichten und more.

Überprüfen Sie die API Reference für weitere Details.

Der Codeausschnitt unten zeigt, wie ein BrowserView erstellen, betten sie in eine Form, und laden Sie eine 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"); 
     } 
    } 
} 

Sobald Sie das Beispiel laufen über die folgende Ausgabe erhalten:

enter image description here

Die Bibliothek ist kommerziell, jedoch für die Verwendung in Open-Source- und akademischen Projekten frei. Kommerzielle Lizenzen beinhalten Support-Pakete für verschiedene Teamgrößen. Es ist auch möglich, den Quellcode der Bibliothek zu erwerben.

Neben der eigenen Seite ist die Komponente als NuGet package und als VSIX package im Visual Studio Marketplace verfügbar.

0

-Update 2016:

Sie könnten auch verwenden:

BrowseEmAll.Cef

ein .NET-Komponente, die verwendet werden können, den Chrome Motor in Ihre .NET-Anwendung zu integrieren. Basiert auf CefGlue aber ein wenig schneller auf Updates der neuesten Chrome-Version. Auch gibt es eine kommerzielle Unterstützung Option verfügbar, die für einige nützlich sein könnte. Natürlich ist die Komponente selbst Open Source.

(Full Disclosure: Ich arbeite für dieses Unternehmen so alles nehme ich mit einem Körnchen Salz sagen)