27 votes

Alternative C# WPF WebBrowser

J'ai besoin d'un navigateur web dans mon application .NET 3.5 et je ne veux pas utiliser le navigateur web par défaut (parce qu'il est bogué et lent). J'ai essayé Chromium de Chris Cavanagh, mais je n'ai pas réussi à le faire fonctionner... Existe-t-il des alternatives plus faciles à utiliser ? Je cherche quelque chose de très simple et léger sur l'ordinateur, il hébergera une boutique en ligne si cela est important.

10voto

chillitom Points 5731

Découvrez mon nouveau projet : https://github.com/chillitom/CefSharp

Ceci apporte le Chromium Embedded Framework à .Net / C#. Voir la page Github pour les sources, les binaires et l'exemple.

Caractéristiques :

  • un contrôle du navigateur avec des commandes de navigation
  • Événements INotifyPropertyChanged
  • ExecuteJavascript
  • Enregistrer vos propres gestionnaires de schéma/protocole
  • téléchargements de ressources d'interception
  • lier les objets CLR dans le contexte JavaScript de Chromium.

Il est encore en phase de pré-alpha, donc tout commentaire est apprécié.

5voto

tbreffni Points 3031

J'ai eu de la chance en utilisant GeckoFX dans une application win form en C#. Voici le article de démarrage qui explique quelles sont les dépendances que vous devez installer pour le rendre opérationnel.

2voto

r3st0r3 Points 1212

Si vous utilisez Windows Forms, il est plus facile à intégrer dans un contrôle WebBrowser. Si vous êtes en utilisant WPF, il est possible d'utiliser le contrôle WebBrowser à partir de WPF. Toutefois, le comportement de WPF et les WinForms sont différents.

Dans WPF, chaque pixel est rendu différemment que dans les WinForms. Vous pouvez afficher du contenu sur le dessus d'un WebBrowser de contrôle à l'aide de cette méthode:

http://karlshifflett.wordpress.com/2009/06/13/wpf-float-buttons-over-web-browser-control/

Cependant, si vous souhaitez créer une Fenêtre personnalisée et d'afficher un contrôle WebBrowser sur une fenêtre transparente, il n'a même pas montrer le contrôle WebBrowser. Il y a quelques solutions de contournement, mais la plupart d'entre eux sont compliquées. L'enfer, on a même recommandé de dessiner un faux INTERFACE utilisateur WPF derrière un WinForms. Mal couplé codes et plus sphagetti.

J'ai essayé ce pour une journée entière. Ce sont toutes les ressources que j'ai rassemblé sur cette. La prochaine tâche pour vous, est à la compilation, et obtenir une compréhension des choses. Cela vous met sur le même bateau que moi.

WPF WebBrowser (3.5 SP1) Toujours sur le dessus - de la suggestion de l'autre pour afficher le code HTML dans WPF

http://blogs.msdn.com/b/changov/archive/2009/01/19/webbrowser-control-on-transparent-wpf-window.aspx

http://msdn.microsoft.com/en-us/library/ms742522.aspx

http://www.neowin.net/forum/topic/646970-c%23-wpf-window-with-transparency-makes-windowsformshost-disappear/

Actuellement, j'ai abandonné le contrôle WebBrowser et m'en vais pour la Awesomium projet. En essayant de le rendre le travail est un autre tracas que les codes sont répartis sur différents .NET versions. Si l'un de vous avait un peu de chance, merci de le partager ici.

Vous pouvez également voir ce projet pour plus facile à utiliser des contrôles pour les navigateurs web.

http://www.khrona.com/products/awesomium/

Une fois de plus, WinForms a pas de problème avec le contrôle WebBrowser, WPF a d'innombrables et MS n'est pas désireux de raccommoder les choses plus tôt.

1voto

mikel Points 10793

Je ne suis pas sûr qu'il y ait tant d'alternatives, http://webkitdotnet.sourceforge.net/ en est une cependant. Je pense qu'il s'agit d'un contrôle WinForms plutôt que WPF, donc il faudra peut-être sauter par-dessus des cerceaux pour le faire fonctionner.

0voto

Alexey Zimarev Points 517

J'ai trouvé une collection de FAQs sur ce sujet sur http://www.syncfusion.com/faq/windowsforms/faq_c100c.aspx

mais je n'ai pas essayé moi-même.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X